/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-red-50: oklch(97.1% 0.013 17.38);
    --color-red-100: oklch(93.6% 0.032 17.717);
    --color-red-200: oklch(88.5% 0.062 18.334);
    --color-red-300: oklch(80.8% 0.114 19.571);
    --color-red-400: oklch(70.4% 0.191 22.216);
    --color-red-500: oklch(63.7% 0.237 25.331);
    --color-red-600: oklch(57.7% 0.245 27.325);
    --color-red-700: oklch(50.5% 0.213 27.518);
    --color-red-800: oklch(44.4% 0.177 26.899);
    --color-red-900: oklch(39.6% 0.141 25.723);
    --color-red-950: oklch(25.8% 0.092 26.042);
    --color-orange-50: oklch(98% 0.016 73.684);
    --color-orange-100: oklch(95.4% 0.038 75.164);
    --color-orange-200: oklch(90.1% 0.076 70.697);
    --color-orange-300: oklch(83.7% 0.128 66.29);
    --color-orange-400: oklch(75% 0.183 55.934);
    --color-orange-500: oklch(70.5% 0.213 47.604);
    --color-orange-600: oklch(64.6% 0.222 41.116);
    --color-orange-700: oklch(55.3% 0.195 38.402);
    --color-orange-800: oklch(47% 0.157 37.304);
    --color-orange-900: oklch(40.8% 0.123 38.172);
    --color-orange-950: oklch(26.6% 0.079 36.259);
    --color-amber-50: oklch(98.7% 0.022 95.277);
    --color-amber-100: oklch(96.2% 0.059 95.617);
    --color-amber-200: oklch(92.4% 0.12 95.746);
    --color-amber-300: oklch(87.9% 0.169 91.605);
    --color-amber-400: oklch(82.8% 0.189 84.429);
    --color-amber-500: oklch(76.9% 0.188 70.08);
    --color-amber-600: oklch(66.6% 0.179 58.318);
    --color-amber-700: oklch(55.5% 0.163 48.998);
    --color-amber-800: oklch(47.3% 0.137 46.201);
    --color-amber-900: oklch(41.4% 0.112 45.904);
    --color-amber-950: oklch(27.9% 0.077 45.635);
    --color-yellow-50: oklch(98.7% 0.026 102.212);
    --color-yellow-100: oklch(97.3% 0.071 103.193);
    --color-yellow-200: oklch(94.5% 0.129 101.54);
    --color-yellow-300: oklch(90.5% 0.182 98.111);
    --color-yellow-400: oklch(85.2% 0.199 91.936);
    --color-yellow-500: oklch(79.5% 0.184 86.047);
    --color-yellow-600: oklch(68.1% 0.162 75.834);
    --color-yellow-700: oklch(55.4% 0.135 66.442);
    --color-yellow-800: oklch(47.6% 0.114 61.907);
    --color-yellow-900: oklch(42.1% 0.095 57.708);
    --color-yellow-950: oklch(28.6% 0.066 53.813);
    --color-lime-50: oklch(98.6% 0.031 120.757);
    --color-lime-100: oklch(96.7% 0.067 122.328);
    --color-lime-200: oklch(93.8% 0.127 124.321);
    --color-lime-300: oklch(89.7% 0.196 126.665);
    --color-lime-400: oklch(84.1% 0.238 128.85);
    --color-lime-500: oklch(76.8% 0.233 130.85);
    --color-lime-600: oklch(64.8% 0.2 131.684);
    --color-lime-700: oklch(53.2% 0.157 131.589);
    --color-lime-800: oklch(45.3% 0.124 130.933);
    --color-lime-900: oklch(40.5% 0.101 131.063);
    --color-lime-950: oklch(27.4% 0.072 132.109);
    --color-green-50: oklch(98.2% 0.018 155.826);
    --color-green-100: oklch(96.2% 0.044 156.743);
    --color-green-200: oklch(92.5% 0.084 155.995);
    --color-green-300: oklch(87.1% 0.15 154.449);
    --color-green-400: oklch(79.2% 0.209 151.711);
    --color-green-500: oklch(72.3% 0.219 149.579);
    --color-green-600: oklch(62.7% 0.194 149.214);
    --color-green-700: oklch(52.7% 0.154 150.069);
    --color-green-800: oklch(44.8% 0.119 151.328);
    --color-green-900: oklch(39.3% 0.095 152.535);
    --color-green-950: oklch(26.6% 0.065 152.934);
    --color-emerald-50: oklch(97.9% 0.021 166.113);
    --color-emerald-100: oklch(95% 0.052 163.051);
    --color-emerald-200: oklch(90.5% 0.093 164.15);
    --color-emerald-300: oklch(84.5% 0.143 164.978);
    --color-emerald-400: oklch(76.5% 0.177 163.223);
    --color-emerald-500: oklch(69.6% 0.17 162.48);
    --color-emerald-600: oklch(59.6% 0.145 163.225);
    --color-emerald-700: oklch(50.8% 0.118 165.612);
    --color-emerald-800: oklch(43.2% 0.095 166.913);
    --color-emerald-900: oklch(37.8% 0.077 168.94);
    --color-emerald-950: oklch(26.2% 0.051 172.552);
    --color-teal-50: oklch(98.4% 0.014 180.72);
    --color-teal-100: oklch(95.3% 0.051 180.801);
    --color-teal-200: oklch(91% 0.096 180.426);
    --color-teal-300: oklch(85.5% 0.138 181.071);
    --color-teal-400: oklch(77.7% 0.152 181.912);
    --color-teal-500: oklch(70.4% 0.14 182.503);
    --color-teal-600: oklch(60% 0.118 184.704);
    --color-teal-700: oklch(51.1% 0.096 186.391);
    --color-teal-800: oklch(43.7% 0.078 188.216);
    --color-teal-900: oklch(38.6% 0.063 188.416);
    --color-teal-950: oklch(27.7% 0.046 192.524);
    --color-cyan-50: oklch(98.4% 0.019 200.873);
    --color-cyan-100: oklch(95.6% 0.045 203.388);
    --color-cyan-200: oklch(91.7% 0.08 205.041);
    --color-cyan-300: oklch(86.5% 0.127 207.078);
    --color-cyan-400: oklch(78.9% 0.154 211.53);
    --color-cyan-500: oklch(71.5% 0.143 215.221);
    --color-cyan-600: oklch(60.9% 0.126 221.723);
    --color-cyan-700: oklch(52% 0.105 223.128);
    --color-cyan-800: oklch(45% 0.085 224.283);
    --color-cyan-900: oklch(39.8% 0.07 227.392);
    --color-cyan-950: oklch(30.2% 0.056 229.695);
    --color-sky-50: oklch(97.7% 0.013 236.62);
    --color-sky-100: oklch(95.1% 0.026 236.824);
    --color-sky-200: oklch(90.1% 0.058 230.902);
    --color-sky-300: oklch(82.8% 0.111 230.318);
    --color-sky-400: oklch(74.6% 0.16 232.661);
    --color-sky-500: oklch(68.5% 0.169 237.323);
    --color-sky-600: oklch(58.8% 0.158 241.966);
    --color-sky-700: oklch(50% 0.134 242.749);
    --color-sky-800: oklch(44.3% 0.11 240.79);
    --color-sky-900: oklch(39.1% 0.09 240.876);
    --color-sky-950: oklch(29.3% 0.066 243.157);
    --color-blue-50: oklch(97% 0.014 254.604);
    --color-blue-100: oklch(93.2% 0.032 255.585);
    --color-blue-200: oklch(88.2% 0.059 254.128);
    --color-blue-300: oklch(80.9% 0.105 251.813);
    --color-blue-400: oklch(70.7% 0.165 254.624);
    --color-blue-500: oklch(62.3% 0.214 259.815);
    --color-blue-600: oklch(54.6% 0.245 262.881);
    --color-blue-700: oklch(48.8% 0.243 264.376);
    --color-blue-800: oklch(42.4% 0.199 265.638);
    --color-blue-900: oklch(37.9% 0.146 265.522);
    --color-blue-950: oklch(28.2% 0.091 267.935);
    --color-indigo-50: oklch(96.2% 0.018 272.314);
    --color-indigo-100: oklch(93% 0.034 272.788);
    --color-indigo-200: oklch(87% 0.065 274.039);
    --color-indigo-300: oklch(78.5% 0.115 274.713);
    --color-indigo-400: oklch(67.3% 0.182 276.935);
    --color-indigo-500: oklch(58.5% 0.233 277.117);
    --color-indigo-600: oklch(51.1% 0.262 276.966);
    --color-indigo-700: oklch(45.7% 0.24 277.023);
    --color-indigo-800: oklch(39.8% 0.195 277.366);
    --color-indigo-900: oklch(35.9% 0.144 278.697);
    --color-indigo-950: oklch(25.7% 0.09 281.288);
    --color-violet-50: oklch(96.9% 0.016 293.756);
    --color-violet-100: oklch(94.3% 0.029 294.588);
    --color-violet-200: oklch(89.4% 0.057 293.283);
    --color-violet-300: oklch(81.1% 0.111 293.571);
    --color-violet-400: oklch(70.2% 0.183 293.541);
    --color-violet-500: oklch(60.6% 0.25 292.717);
    --color-violet-600: oklch(54.1% 0.281 293.009);
    --color-violet-700: oklch(49.1% 0.27 292.581);
    --color-violet-800: oklch(43.2% 0.232 292.759);
    --color-violet-900: oklch(38% 0.189 293.745);
    --color-violet-950: oklch(28.3% 0.141 291.089);
    --color-purple-50: oklch(97.7% 0.014 308.299);
    --color-purple-100: oklch(94.6% 0.033 307.174);
    --color-purple-200: oklch(90.2% 0.063 306.703);
    --color-purple-300: oklch(82.7% 0.119 306.383);
    --color-purple-400: oklch(71.4% 0.203 305.504);
    --color-purple-500: oklch(62.7% 0.265 303.9);
    --color-purple-600: oklch(55.8% 0.288 302.321);
    --color-purple-700: oklch(49.6% 0.265 301.924);
    --color-purple-800: oklch(43.8% 0.218 303.724);
    --color-purple-900: oklch(38.1% 0.176 304.987);
    --color-purple-950: oklch(29.1% 0.149 302.717);
    --color-fuchsia-50: oklch(97.7% 0.017 320.058);
    --color-fuchsia-100: oklch(95.2% 0.037 318.852);
    --color-fuchsia-200: oklch(90.3% 0.076 319.62);
    --color-fuchsia-300: oklch(83.3% 0.145 321.434);
    --color-fuchsia-400: oklch(74% 0.238 322.16);
    --color-fuchsia-500: oklch(66.7% 0.295 322.15);
    --color-fuchsia-600: oklch(59.1% 0.293 322.896);
    --color-fuchsia-700: oklch(51.8% 0.253 323.949);
    --color-fuchsia-800: oklch(45.2% 0.211 324.591);
    --color-fuchsia-900: oklch(40.1% 0.17 325.612);
    --color-fuchsia-950: oklch(29.3% 0.136 325.661);
    --color-pink-50: oklch(97.1% 0.014 343.198);
    --color-pink-100: oklch(94.8% 0.028 342.258);
    --color-pink-200: oklch(89.9% 0.061 343.231);
    --color-pink-300: oklch(82.3% 0.12 346.018);
    --color-pink-400: oklch(71.8% 0.202 349.761);
    --color-pink-500: oklch(65.6% 0.241 354.308);
    --color-pink-600: oklch(59.2% 0.249 0.584);
    --color-pink-700: oklch(52.5% 0.223 3.958);
    --color-pink-800: oklch(45.9% 0.187 3.815);
    --color-pink-900: oklch(40.8% 0.153 2.432);
    --color-pink-950: oklch(28.4% 0.109 3.907);
    --color-rose-50: oklch(96.9% 0.015 12.422);
    --color-rose-100: oklch(94.1% 0.03 12.58);
    --color-rose-200: oklch(89.2% 0.058 10.001);
    --color-rose-300: oklch(81% 0.117 11.638);
    --color-rose-400: oklch(71.2% 0.194 13.428);
    --color-rose-500: oklch(64.5% 0.246 16.439);
    --color-rose-600: oklch(58.6% 0.253 17.585);
    --color-rose-700: oklch(51.4% 0.222 16.935);
    --color-rose-800: oklch(45.5% 0.188 13.697);
    --color-rose-900: oklch(41% 0.159 10.272);
    --color-rose-950: oklch(27.1% 0.105 12.094);
    --color-slate-50: oklch(98.4% 0.003 247.858);
    --color-slate-100: oklch(96.8% 0.007 247.896);
    --color-slate-200: oklch(92.9% 0.013 255.508);
    --color-slate-300: oklch(86.9% 0.022 252.894);
    --color-slate-400: oklch(70.4% 0.04 256.788);
    --color-slate-500: oklch(55.4% 0.046 257.417);
    --color-slate-600: oklch(44.6% 0.043 257.281);
    --color-slate-700: oklch(37.2% 0.044 257.287);
    --color-slate-800: oklch(27.9% 0.041 260.031);
    --color-slate-900: oklch(20.8% 0.042 265.755);
    --color-slate-950: oklch(12.9% 0.042 264.695);
    --color-gray-50: oklch(98.5% 0.002 247.839);
    --color-gray-100: oklch(96.7% 0.003 264.542);
    --color-gray-200: oklch(92.8% 0.006 264.531);
    --color-gray-300: oklch(87.2% 0.01 258.338);
    --color-gray-400: oklch(70.7% 0.022 261.325);
    --color-gray-500: oklch(55.1% 0.027 264.364);
    --color-gray-600: oklch(44.6% 0.03 256.802);
    --color-gray-700: oklch(37.3% 0.034 259.733);
    --color-gray-800: oklch(27.8% 0.033 256.848);
    --color-gray-900: oklch(21% 0.034 264.665);
    --color-gray-950: oklch(13% 0.028 261.692);
    --color-zinc-50: oklch(98.5% 0 0);
    --color-zinc-100: oklch(96.7% 0.001 286.375);
    --color-zinc-200: oklch(92% 0.004 286.32);
    --color-zinc-300: oklch(87.1% 0.006 286.286);
    --color-zinc-400: oklch(70.5% 0.015 286.067);
    --color-zinc-500: oklch(55.2% 0.016 285.938);
    --color-zinc-600: oklch(44.2% 0.017 285.786);
    --color-zinc-700: oklch(37% 0.013 285.805);
    --color-zinc-800: oklch(27.4% 0.006 286.033);
    --color-zinc-900: oklch(21% 0.006 285.885);
    --color-zinc-950: oklch(14.1% 0.005 285.823);
    --color-neutral-50: oklch(98.5% 0 0);
    --color-neutral-100: oklch(97% 0 0);
    --color-neutral-200: oklch(92.2% 0 0);
    --color-neutral-300: oklch(87% 0 0);
    --color-neutral-400: oklch(70.8% 0 0);
    --color-neutral-500: oklch(55.6% 0 0);
    --color-neutral-600: oklch(43.9% 0 0);
    --color-neutral-700: oklch(37.1% 0 0);
    --color-neutral-800: oklch(26.9% 0 0);
    --color-neutral-900: oklch(20.5% 0 0);
    --color-neutral-950: oklch(14.5% 0 0);
    --color-stone-50: oklch(98.5% 0.001 106.423);
    --color-stone-100: oklch(97% 0.001 106.424);
    --color-stone-200: oklch(92.3% 0.003 48.717);
    --color-stone-300: oklch(86.9% 0.005 56.366);
    --color-stone-400: oklch(70.9% 0.01 56.259);
    --color-stone-500: oklch(55.3% 0.013 58.071);
    --color-stone-600: oklch(44.4% 0.011 73.639);
    --color-stone-700: oklch(37.4% 0.01 67.558);
    --color-stone-800: oklch(26.8% 0.007 34.298);
    --color-stone-900: oklch(21.6% 0.006 56.043);
    --color-stone-950: oklch(14.7% 0.004 49.25);
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --breakpoint-2xl: 96rem;
    --container-3xs: 16rem;
    --container-xs: 20rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-lg: 32rem;
    --container-xl: 36rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-5xl: 64rem;
    --container-6xl: 72rem;
    --container-7xl: 80rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --text-5xl: 3rem;
    --text-5xl--line-height: 1;
    --text-7xl: 4.5rem;
    --text-7xl--line-height: 1;
    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --tracking-tighter: -0.05em;
    --tracking-tight: -0.025em;
    --tracking-widest: 0.1em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-normal: 1.5;
    --leading-relaxed: 1.625;
    --leading-loose: 2;
    --radius-xs: 0.125rem;
    --radius-sm: 0.25rem;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --radius-xl: 0.75rem;
    --radius-2xl: 1rem;
    --radius-4xl: 2rem;
    --ease-in: cubic-bezier(0.4, 0, 1, 1);
    --ease-out: cubic-bezier(0, 0, 0.2, 1);
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --animate-spin: spin 1s linear infinite;
    --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    --blur-xs: 4px;
    --blur-sm: 8px;
    --aspect-video: 16 / 9;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --pad-xs: 0.15rem 0.25rem;
    --pad-sm: 0.25rem;
    --pad-md: 0.4rem;
    --pad-lg: 0.5rem;
    --pad-xl: 0.75rem;
    --pad-2xl: 1rem;
    --color-background: var(--background);
    --color-foreground: var(--foreground);
    --color-card: var(--card);
    --color-card-foreground: var(--card-foreground);
    --color-primary: var(--primary);
    --color-primary-foreground: var(--primary-foreground);
    --color-secondary: var(--secondary);
    --color-secondary-foreground: var(--secondary-foreground);
    --color-muted: var(--muted);
    --color-muted-foreground: var(--muted-foreground);
    --color-accent: var(--accent);
    --color-accent-foreground: var(--accent-foreground);
    --color-destructive: var(--destructive);
    --color-success: var(--success);
    --color-info: var(--info);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .pointer-events-auto {
    pointer-events: auto;
  }
  .pointer-events-none {
    pointer-events: none;
  }
  .collapse {
    visibility: collapse;
  }
  .visible {
    visibility: visible;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-2 {
    top: calc(var(--spacing) * 2);
  }
  .right-0 {
    right: calc(var(--spacing) * 0);
  }
  .right-2 {
    right: calc(var(--spacing) * 2);
  }
  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }
  .left-0 {
    left: calc(var(--spacing) * 0);
  }
  .z-1 {
    z-index: 1;
  }
  .z-100 {
    z-index: 100;
  }
  .z-1000 {
    z-index: 1000;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .m-0 {
    margin: calc(var(--spacing) * 0);
  }
  .m-2 {
    margin: calc(var(--spacing) * 2);
  }
  .m-3 {
    margin: calc(var(--spacing) * 3);
  }
  .mx-1 {
    margin-inline: calc(var(--spacing) * 1);
  }
  .mx-2 {
    margin-inline: calc(var(--spacing) * 2);
  }
  .mx-auto {
    margin-inline: auto;
  }
  .my-0 {
    margin-block: calc(var(--spacing) * 0);
  }
  .my-1 {
    margin-block: calc(var(--spacing) * 1);
  }
  .my-2 {
    margin-block: calc(var(--spacing) * 2);
  }
  .my-4 {
    margin-block: calc(var(--spacing) * 4);
  }
  .my-6 {
    margin-block: calc(var(--spacing) * 6);
  }
  .mt-1 {
    margin-top: calc(var(--spacing) * 1);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mr-1 {
    margin-right: calc(var(--spacing) * 1);
  }
  .mr-2 {
    margin-right: calc(var(--spacing) * 2);
  }
  .mr-6 {
    margin-right: calc(var(--spacing) * 6);
  }
  .mr-auto {
    margin-right: auto;
  }
  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }
  .ml-0 {
    margin-left: calc(var(--spacing) * 0);
  }
  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }
  .ml-4 {
    margin-left: calc(var(--spacing) * 4);
  }
  .ml-auto {
    margin-left: auto;
  }
  .line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .inline-grid {
    display: inline-grid;
  }
  .table {
    display: table;
  }
  .table\! {
    display: table !important;
  }
  .field-sizing-content {
    field-sizing: content;
  }
  .aspect-square {
    aspect-ratio: 1 / 1;
  }
  .size-3 {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .size-4 {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .size-6 {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
  .size-8 {
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
  }
  .size-10 {
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
  }
  .size-12 {
    width: calc(var(--spacing) * 12);
    height: calc(var(--spacing) * 12);
  }
  .size-full {
    width: 100%;
    height: 100%;
  }
  .h-2 {
    height: calc(var(--spacing) * 2);
  }
  .h-3 {
    height: calc(var(--spacing) * 3);
  }
  .h-4 {
    height: calc(var(--spacing) * 4);
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-7 {
    height: calc(var(--spacing) * 7);
  }
  .h-8 {
    height: calc(var(--spacing) * 8);
  }
  .h-9 {
    height: calc(var(--spacing) * 9);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-13 {
    height: calc(var(--spacing) * 13);
  }
  .h-32 {
    height: calc(var(--spacing) * 32);
  }
  .h-\[48px\] {
    height: 48px;
  }
  .h-auto {
    height: auto;
  }
  .h-fit {
    height: fit-content;
  }
  .h-full {
    height: 100%;
  }
  .min-h-3 {
    min-height: calc(var(--spacing) * 3);
  }
  .min-h-8 {
    min-height: calc(var(--spacing) * 8);
  }
  .min-h-fit {
    min-height: fit-content;
  }
  .min-h-max {
    min-height: max-content;
  }
  .\!w-fit {
    width: fit-content !important;
  }
  .w-1\/3 {
    width: calc(1/3 * 100%);
  }
  .w-2 {
    width: calc(var(--spacing) * 2);
  }
  .w-2\/3 {
    width: calc(2/3 * 100%);
  }
  .w-3 {
    width: calc(var(--spacing) * 3);
  }
  .w-3xs {
    width: var(--container-3xs);
  }
  .w-10 {
    width: calc(var(--spacing) * 10);
  }
  .w-12 {
    width: calc(var(--spacing) * 12);
  }
  .w-auto {
    width: auto;
  }
  .w-fit {
    width: fit-content;
  }
  .w-full {
    width: 100%;
  }
  .w-max {
    width: max-content;
  }
  .max-w-3xl {
    max-width: var(--container-3xl);
  }
  .max-w-4xl {
    max-width: var(--container-4xl);
  }
  .max-w-lg {
    max-width: var(--container-lg);
  }
  .max-w-sm {
    max-width: var(--container-sm);
  }
  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }
  .min-w-2 {
    min-width: calc(var(--spacing) * 2);
  }
  .min-w-3xs {
    min-width: var(--container-3xs);
  }
  .min-w-5 {
    min-width: calc(var(--spacing) * 5);
  }
  .min-w-fit {
    min-width: fit-content;
  }
  .flex-auto {
    flex: auto;
  }
  .flex-none {
    flex: none;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .shrink-1 {
    flex-shrink: 1;
  }
  .grow-0 {
    flex-grow: 0;
  }
  .grow-1 {
    flex-grow: 1;
  }
  .basis-full {
    flex-basis: 100%;
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .animate-pulse {
    animation: var(--animate-pulse);
  }
  .animate-spin {
    animation: var(--animate-spin);
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .cursor-text {
    cursor: text;
  }
  .touch-none {
    touch-action: none;
  }
  .\!resize {
    resize: both !important;
  }
  .resize {
    resize: both;
  }
  .resize-none {
    resize: none;
  }
  .grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-col-reverse {
    flex-direction: column-reverse;
  }
  .flex-row {
    flex-direction: row;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .place-content-center {
    place-content: center;
  }
  .content-center {
    align-content: center;
  }
  .items-center {
    align-items: center;
  }
  .items-end {
    align-items: flex-end;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .justify-start {
    justify-content: flex-start;
  }
  .gap-0\.5 {
    gap: calc(var(--spacing) * 0.5);
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .gap-12 {
    gap: calc(var(--spacing) * 12);
  }
  .-space-x-2 {
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 0;
      margin-inline-start: calc(calc(var(--spacing) * -2) * var(--tw-space-x-reverse));
      margin-inline-end: calc(calc(var(--spacing) * -2) * calc(1 - var(--tw-space-x-reverse)));
    }
  }
  .place-self-center {
    place-self: center;
  }
  .self-center {
    align-self: center;
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-scroll {
    overflow: scroll;
  }
  .overflow-x-hidden {
    overflow-x: hidden;
  }
  .overflow-y-scroll {
    overflow-y: scroll;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-2xl {
    border-radius: var(--radius-2xl);
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius-lg);
  }
  .rounded-md {
    border-radius: var(--radius-md);
  }
  .rounded-sm {
    border-radius: var(--radius-sm);
  }
  .rounded-xl {
    border-radius: var(--radius-xl);
  }
  .rounded-t-lg {
    border-top-left-radius: var(--radius-lg);
    border-top-right-radius: var(--radius-lg);
  }
  .rounded-l {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
  }
  .rounded-r {
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
  }
  .rounded-r-lg {
    border-top-right-radius: var(--radius-lg);
    border-bottom-right-radius: var(--radius-lg);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-0 {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .border-1 {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-3 {
    border-style: var(--tw-border-style);
    border-width: 3px;
  }
  .border-none {
    --tw-border-style: none;
    border-style: none;
  }
  .border-solid {
    --tw-border-style: solid;
    border-style: solid;
  }
  .border-transparent {
    border-color: transparent;
  }
  .border-white {
    border-color: var(--color-white);
  }
  .bg-accent {
    background-color: var(--color-accent);
  }
  .bg-amber-50 {
    background-color: var(--color-amber-50);
  }
  .bg-amber-100 {
    background-color: var(--color-amber-100);
  }
  .bg-amber-200 {
    background-color: var(--color-amber-200);
  }
  .bg-amber-300 {
    background-color: var(--color-amber-300);
  }
  .bg-amber-400 {
    background-color: var(--color-amber-400);
  }
  .bg-amber-500 {
    background-color: var(--color-amber-500);
  }
  .bg-amber-600 {
    background-color: var(--color-amber-600);
  }
  .bg-amber-700 {
    background-color: var(--color-amber-700);
  }
  .bg-amber-800 {
    background-color: var(--color-amber-800);
  }
  .bg-amber-900 {
    background-color: var(--color-amber-900);
  }
  .bg-amber-950 {
    background-color: var(--color-amber-950);
  }
  .bg-background {
    background-color: var(--color-background);
  }
  .bg-black {
    background-color: var(--color-black);
  }
  .bg-black\/50 {
    background-color: color-mix(in srgb, #000 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 50%, transparent);
    }
  }
  .bg-blue-50 {
    background-color: var(--color-blue-50);
  }
  .bg-blue-100 {
    background-color: var(--color-blue-100);
  }
  .bg-blue-200 {
    background-color: var(--color-blue-200);
  }
  .bg-blue-300 {
    background-color: var(--color-blue-300);
  }
  .bg-blue-400 {
    background-color: var(--color-blue-400);
  }
  .bg-blue-500 {
    background-color: var(--color-blue-500);
  }
  .bg-blue-600 {
    background-color: var(--color-blue-600);
  }
  .bg-blue-700 {
    background-color: var(--color-blue-700);
  }
  .bg-blue-800 {
    background-color: var(--color-blue-800);
  }
  .bg-blue-900 {
    background-color: var(--color-blue-900);
  }
  .bg-blue-950 {
    background-color: var(--color-blue-950);
  }
  .bg-card {
    background-color: var(--color-card);
  }
  .bg-card\/50 {
    background-color: var(--color-card);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-card) 50%, transparent);
    }
  }
  .bg-cyan-50 {
    background-color: var(--color-cyan-50);
  }
  .bg-cyan-100 {
    background-color: var(--color-cyan-100);
  }
  .bg-cyan-200 {
    background-color: var(--color-cyan-200);
  }
  .bg-cyan-300 {
    background-color: var(--color-cyan-300);
  }
  .bg-cyan-400 {
    background-color: var(--color-cyan-400);
  }
  .bg-cyan-500 {
    background-color: var(--color-cyan-500);
  }
  .bg-cyan-600 {
    background-color: var(--color-cyan-600);
  }
  .bg-cyan-700 {
    background-color: var(--color-cyan-700);
  }
  .bg-cyan-800 {
    background-color: var(--color-cyan-800);
  }
  .bg-cyan-900 {
    background-color: var(--color-cyan-900);
  }
  .bg-cyan-950 {
    background-color: var(--color-cyan-950);
  }
  .bg-emerald-50 {
    background-color: var(--color-emerald-50);
  }
  .bg-emerald-100 {
    background-color: var(--color-emerald-100);
  }
  .bg-emerald-200 {
    background-color: var(--color-emerald-200);
  }
  .bg-emerald-300 {
    background-color: var(--color-emerald-300);
  }
  .bg-emerald-400 {
    background-color: var(--color-emerald-400);
  }
  .bg-emerald-500 {
    background-color: var(--color-emerald-500);
  }
  .bg-emerald-600 {
    background-color: var(--color-emerald-600);
  }
  .bg-emerald-700 {
    background-color: var(--color-emerald-700);
  }
  .bg-emerald-800 {
    background-color: var(--color-emerald-800);
  }
  .bg-emerald-900 {
    background-color: var(--color-emerald-900);
  }
  .bg-emerald-950 {
    background-color: var(--color-emerald-950);
  }
  .bg-fuchsia-50 {
    background-color: var(--color-fuchsia-50);
  }
  .bg-fuchsia-100 {
    background-color: var(--color-fuchsia-100);
  }
  .bg-fuchsia-200 {
    background-color: var(--color-fuchsia-200);
  }
  .bg-fuchsia-300 {
    background-color: var(--color-fuchsia-300);
  }
  .bg-fuchsia-400 {
    background-color: var(--color-fuchsia-400);
  }
  .bg-fuchsia-500 {
    background-color: var(--color-fuchsia-500);
  }
  .bg-fuchsia-600 {
    background-color: var(--color-fuchsia-600);
  }
  .bg-fuchsia-700 {
    background-color: var(--color-fuchsia-700);
  }
  .bg-fuchsia-800 {
    background-color: var(--color-fuchsia-800);
  }
  .bg-fuchsia-900 {
    background-color: var(--color-fuchsia-900);
  }
  .bg-fuchsia-950 {
    background-color: var(--color-fuchsia-950);
  }
  .bg-gray-50 {
    background-color: var(--color-gray-50);
  }
  .bg-gray-100 {
    background-color: var(--color-gray-100);
  }
  .bg-gray-200 {
    background-color: var(--color-gray-200);
  }
  .bg-gray-300 {
    background-color: var(--color-gray-300);
  }
  .bg-gray-400 {
    background-color: var(--color-gray-400);
  }
  .bg-gray-500 {
    background-color: var(--color-gray-500);
  }
  .bg-gray-600 {
    background-color: var(--color-gray-600);
  }
  .bg-gray-700 {
    background-color: var(--color-gray-700);
  }
  .bg-gray-800 {
    background-color: var(--color-gray-800);
  }
  .bg-gray-900 {
    background-color: var(--color-gray-900);
  }
  .bg-gray-950 {
    background-color: var(--color-gray-950);
  }
  .bg-green-50 {
    background-color: var(--color-green-50);
  }
  .bg-green-100 {
    background-color: var(--color-green-100);
  }
  .bg-green-200 {
    background-color: var(--color-green-200);
  }
  .bg-green-300 {
    background-color: var(--color-green-300);
  }
  .bg-green-400 {
    background-color: var(--color-green-400);
  }
  .bg-green-500 {
    background-color: var(--color-green-500);
  }
  .bg-green-600 {
    background-color: var(--color-green-600);
  }
  .bg-green-700 {
    background-color: var(--color-green-700);
  }
  .bg-green-800 {
    background-color: var(--color-green-800);
  }
  .bg-green-900 {
    background-color: var(--color-green-900);
  }
  .bg-green-950 {
    background-color: var(--color-green-950);
  }
  .bg-indigo-50 {
    background-color: var(--color-indigo-50);
  }
  .bg-indigo-100 {
    background-color: var(--color-indigo-100);
  }
  .bg-indigo-200 {
    background-color: var(--color-indigo-200);
  }
  .bg-indigo-300 {
    background-color: var(--color-indigo-300);
  }
  .bg-indigo-400 {
    background-color: var(--color-indigo-400);
  }
  .bg-indigo-500 {
    background-color: var(--color-indigo-500);
  }
  .bg-indigo-600 {
    background-color: var(--color-indigo-600);
  }
  .bg-indigo-700 {
    background-color: var(--color-indigo-700);
  }
  .bg-indigo-800 {
    background-color: var(--color-indigo-800);
  }
  .bg-indigo-900 {
    background-color: var(--color-indigo-900);
  }
  .bg-indigo-950 {
    background-color: var(--color-indigo-950);
  }
  .bg-info {
    background-color: var(--color-info);
  }
  .bg-inherit {
    background-color: inherit;
  }
  .bg-lime-50 {
    background-color: var(--color-lime-50);
  }
  .bg-lime-100 {
    background-color: var(--color-lime-100);
  }
  .bg-lime-200 {
    background-color: var(--color-lime-200);
  }
  .bg-lime-300 {
    background-color: var(--color-lime-300);
  }
  .bg-lime-400 {
    background-color: var(--color-lime-400);
  }
  .bg-lime-500 {
    background-color: var(--color-lime-500);
  }
  .bg-lime-600 {
    background-color: var(--color-lime-600);
  }
  .bg-lime-700 {
    background-color: var(--color-lime-700);
  }
  .bg-lime-800 {
    background-color: var(--color-lime-800);
  }
  .bg-lime-900 {
    background-color: var(--color-lime-900);
  }
  .bg-lime-950 {
    background-color: var(--color-lime-950);
  }
  .bg-muted {
    background-color: var(--color-muted);
  }
  .bg-neutral-50 {
    background-color: var(--color-neutral-50);
  }
  .bg-neutral-100 {
    background-color: var(--color-neutral-100);
  }
  .bg-neutral-200 {
    background-color: var(--color-neutral-200);
  }
  .bg-neutral-300 {
    background-color: var(--color-neutral-300);
  }
  .bg-neutral-400 {
    background-color: var(--color-neutral-400);
  }
  .bg-neutral-500 {
    background-color: var(--color-neutral-500);
  }
  .bg-neutral-600 {
    background-color: var(--color-neutral-600);
  }
  .bg-neutral-700 {
    background-color: var(--color-neutral-700);
  }
  .bg-neutral-800 {
    background-color: var(--color-neutral-800);
  }
  .bg-neutral-900 {
    background-color: var(--color-neutral-900);
  }
  .bg-neutral-950 {
    background-color: var(--color-neutral-950);
  }
  .bg-orange-50 {
    background-color: var(--color-orange-50);
  }
  .bg-orange-100 {
    background-color: var(--color-orange-100);
  }
  .bg-orange-200 {
    background-color: var(--color-orange-200);
  }
  .bg-orange-300 {
    background-color: var(--color-orange-300);
  }
  .bg-orange-400 {
    background-color: var(--color-orange-400);
  }
  .bg-orange-500 {
    background-color: var(--color-orange-500);
  }
  .bg-orange-600 {
    background-color: var(--color-orange-600);
  }
  .bg-orange-700 {
    background-color: var(--color-orange-700);
  }
  .bg-orange-800 {
    background-color: var(--color-orange-800);
  }
  .bg-orange-900 {
    background-color: var(--color-orange-900);
  }
  .bg-orange-950 {
    background-color: var(--color-orange-950);
  }
  .bg-pink-50 {
    background-color: var(--color-pink-50);
  }
  .bg-pink-100 {
    background-color: var(--color-pink-100);
  }
  .bg-pink-200 {
    background-color: var(--color-pink-200);
  }
  .bg-pink-300 {
    background-color: var(--color-pink-300);
  }
  .bg-pink-400 {
    background-color: var(--color-pink-400);
  }
  .bg-pink-500 {
    background-color: var(--color-pink-500);
  }
  .bg-pink-600 {
    background-color: var(--color-pink-600);
  }
  .bg-pink-700 {
    background-color: var(--color-pink-700);
  }
  .bg-pink-800 {
    background-color: var(--color-pink-800);
  }
  .bg-pink-900 {
    background-color: var(--color-pink-900);
  }
  .bg-pink-950 {
    background-color: var(--color-pink-950);
  }
  .bg-primary {
    background-color: var(--color-primary);
  }
  .bg-purple-50 {
    background-color: var(--color-purple-50);
  }
  .bg-purple-100 {
    background-color: var(--color-purple-100);
  }
  .bg-purple-200 {
    background-color: var(--color-purple-200);
  }
  .bg-purple-300 {
    background-color: var(--color-purple-300);
  }
  .bg-purple-400 {
    background-color: var(--color-purple-400);
  }
  .bg-purple-500 {
    background-color: var(--color-purple-500);
  }
  .bg-purple-600 {
    background-color: var(--color-purple-600);
  }
  .bg-purple-700 {
    background-color: var(--color-purple-700);
  }
  .bg-purple-800 {
    background-color: var(--color-purple-800);
  }
  .bg-purple-900 {
    background-color: var(--color-purple-900);
  }
  .bg-purple-950 {
    background-color: var(--color-purple-950);
  }
  .bg-red-50 {
    background-color: var(--color-red-50);
  }
  .bg-red-100 {
    background-color: var(--color-red-100);
  }
  .bg-red-200 {
    background-color: var(--color-red-200);
  }
  .bg-red-300 {
    background-color: var(--color-red-300);
  }
  .bg-red-400 {
    background-color: var(--color-red-400);
  }
  .bg-red-500 {
    background-color: var(--color-red-500);
  }
  .bg-red-600 {
    background-color: var(--color-red-600);
  }
  .bg-red-700 {
    background-color: var(--color-red-700);
  }
  .bg-red-800 {
    background-color: var(--color-red-800);
  }
  .bg-red-900 {
    background-color: var(--color-red-900);
  }
  .bg-red-950 {
    background-color: var(--color-red-950);
  }
  .bg-rose-50 {
    background-color: var(--color-rose-50);
  }
  .bg-rose-100 {
    background-color: var(--color-rose-100);
  }
  .bg-rose-200 {
    background-color: var(--color-rose-200);
  }
  .bg-rose-300 {
    background-color: var(--color-rose-300);
  }
  .bg-rose-400 {
    background-color: var(--color-rose-400);
  }
  .bg-rose-500 {
    background-color: var(--color-rose-500);
  }
  .bg-rose-600 {
    background-color: var(--color-rose-600);
  }
  .bg-rose-700 {
    background-color: var(--color-rose-700);
  }
  .bg-rose-800 {
    background-color: var(--color-rose-800);
  }
  .bg-rose-900 {
    background-color: var(--color-rose-900);
  }
  .bg-rose-950 {
    background-color: var(--color-rose-950);
  }
  .bg-secondary {
    background-color: var(--color-secondary);
  }
  .bg-secondary-foreground {
    background-color: var(--color-secondary-foreground);
  }
  .bg-secondary\/50 {
    background-color: var(--color-secondary);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-secondary) 50%, transparent);
    }
  }
  .bg-sky-50 {
    background-color: var(--color-sky-50);
  }
  .bg-sky-100 {
    background-color: var(--color-sky-100);
  }
  .bg-sky-200 {
    background-color: var(--color-sky-200);
  }
  .bg-sky-300 {
    background-color: var(--color-sky-300);
  }
  .bg-sky-400 {
    background-color: var(--color-sky-400);
  }
  .bg-sky-500 {
    background-color: var(--color-sky-500);
  }
  .bg-sky-600 {
    background-color: var(--color-sky-600);
  }
  .bg-sky-700 {
    background-color: var(--color-sky-700);
  }
  .bg-sky-800 {
    background-color: var(--color-sky-800);
  }
  .bg-sky-900 {
    background-color: var(--color-sky-900);
  }
  .bg-sky-950 {
    background-color: var(--color-sky-950);
  }
  .bg-slate-50 {
    background-color: var(--color-slate-50);
  }
  .bg-slate-100 {
    background-color: var(--color-slate-100);
  }
  .bg-slate-200 {
    background-color: var(--color-slate-200);
  }
  .bg-slate-300 {
    background-color: var(--color-slate-300);
  }
  .bg-slate-400 {
    background-color: var(--color-slate-400);
  }
  .bg-slate-500 {
    background-color: var(--color-slate-500);
  }
  .bg-slate-600 {
    background-color: var(--color-slate-600);
  }
  .bg-slate-700 {
    background-color: var(--color-slate-700);
  }
  .bg-slate-800 {
    background-color: var(--color-slate-800);
  }
  .bg-slate-900 {
    background-color: var(--color-slate-900);
  }
  .bg-slate-950 {
    background-color: var(--color-slate-950);
  }
  .bg-stone-50 {
    background-color: var(--color-stone-50);
  }
  .bg-stone-100 {
    background-color: var(--color-stone-100);
  }
  .bg-stone-200 {
    background-color: var(--color-stone-200);
  }
  .bg-stone-300 {
    background-color: var(--color-stone-300);
  }
  .bg-stone-400 {
    background-color: var(--color-stone-400);
  }
  .bg-stone-500 {
    background-color: var(--color-stone-500);
  }
  .bg-stone-600 {
    background-color: var(--color-stone-600);
  }
  .bg-stone-700 {
    background-color: var(--color-stone-700);
  }
  .bg-stone-800 {
    background-color: var(--color-stone-800);
  }
  .bg-stone-900 {
    background-color: var(--color-stone-900);
  }
  .bg-stone-950 {
    background-color: var(--color-stone-950);
  }
  .bg-teal-50 {
    background-color: var(--color-teal-50);
  }
  .bg-teal-100 {
    background-color: var(--color-teal-100);
  }
  .bg-teal-200 {
    background-color: var(--color-teal-200);
  }
  .bg-teal-300 {
    background-color: var(--color-teal-300);
  }
  .bg-teal-400 {
    background-color: var(--color-teal-400);
  }
  .bg-teal-500 {
    background-color: var(--color-teal-500);
  }
  .bg-teal-600 {
    background-color: var(--color-teal-600);
  }
  .bg-teal-700 {
    background-color: var(--color-teal-700);
  }
  .bg-teal-800 {
    background-color: var(--color-teal-800);
  }
  .bg-teal-900 {
    background-color: var(--color-teal-900);
  }
  .bg-teal-950 {
    background-color: var(--color-teal-950);
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-violet-50 {
    background-color: var(--color-violet-50);
  }
  .bg-violet-100 {
    background-color: var(--color-violet-100);
  }
  .bg-violet-200 {
    background-color: var(--color-violet-200);
  }
  .bg-violet-300 {
    background-color: var(--color-violet-300);
  }
  .bg-violet-400 {
    background-color: var(--color-violet-400);
  }
  .bg-violet-500 {
    background-color: var(--color-violet-500);
  }
  .bg-violet-600 {
    background-color: var(--color-violet-600);
  }
  .bg-violet-700 {
    background-color: var(--color-violet-700);
  }
  .bg-violet-800 {
    background-color: var(--color-violet-800);
  }
  .bg-violet-900 {
    background-color: var(--color-violet-900);
  }
  .bg-violet-950 {
    background-color: var(--color-violet-950);
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-yellow-50 {
    background-color: var(--color-yellow-50);
  }
  .bg-yellow-100 {
    background-color: var(--color-yellow-100);
  }
  .bg-yellow-200 {
    background-color: var(--color-yellow-200);
  }
  .bg-yellow-300 {
    background-color: var(--color-yellow-300);
  }
  .bg-yellow-400 {
    background-color: var(--color-yellow-400);
  }
  .bg-yellow-500 {
    background-color: var(--color-yellow-500);
  }
  .bg-yellow-600 {
    background-color: var(--color-yellow-600);
  }
  .bg-yellow-700 {
    background-color: var(--color-yellow-700);
  }
  .bg-yellow-800 {
    background-color: var(--color-yellow-800);
  }
  .bg-yellow-900 {
    background-color: var(--color-yellow-900);
  }
  .bg-yellow-950 {
    background-color: var(--color-yellow-950);
  }
  .bg-zinc-50 {
    background-color: var(--color-zinc-50);
  }
  .bg-zinc-100 {
    background-color: var(--color-zinc-100);
  }
  .bg-zinc-200 {
    background-color: var(--color-zinc-200);
  }
  .bg-zinc-300 {
    background-color: var(--color-zinc-300);
  }
  .bg-zinc-400 {
    background-color: var(--color-zinc-400);
  }
  .bg-zinc-500 {
    background-color: var(--color-zinc-500);
  }
  .bg-zinc-600 {
    background-color: var(--color-zinc-600);
  }
  .bg-zinc-700 {
    background-color: var(--color-zinc-700);
  }
  .bg-zinc-800 {
    background-color: var(--color-zinc-800);
  }
  .bg-zinc-900 {
    background-color: var(--color-zinc-900);
  }
  .bg-zinc-950 {
    background-color: var(--color-zinc-950);
  }
  .bg-none {
    background-image: none;
  }
  .bg-clip-padding {
    background-clip: padding-box;
  }
  .fill-current {
    fill: currentcolor;
  }
  .stroke-none {
    stroke: none;
  }
  .object-cover {
    object-fit: cover;
  }
  .p-0 {
    padding: calc(var(--spacing) * 0);
  }
  .p-1 {
    padding: calc(var(--spacing) * 1);
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-3 {
    padding: calc(var(--spacing) * 3);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .p-8 {
    padding: calc(var(--spacing) * 8);
  }
  .p-12 {
    padding: calc(var(--spacing) * 12);
  }
  .pad-2xl {
    padding: var(--pad-2xl);
  }
  .pad-lg {
    padding: var(--pad-lg);
  }
  .pad-md {
    padding: var(--pad-md);
  }
  .pad-sm {
    padding: var(--pad-sm);
  }
  .pad-xl {
    padding: var(--pad-xl);
  }
  .pad-xs {
    padding: var(--pad-xs);
  }
  .px-0 {
    padding-inline: calc(var(--spacing) * 0);
  }
  .px-1 {
    padding-inline: calc(var(--spacing) * 1);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .py-0\.5 {
    padding-block: calc(var(--spacing) * 0.5);
  }
  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }
  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }
  .ps-0 {
    padding-inline-start: calc(var(--spacing) * 0);
  }
  .pt-0 {
    padding-top: calc(var(--spacing) * 0);
  }
  .pt-1 {
    padding-top: calc(var(--spacing) * 1);
  }
  .pt-8 {
    padding-top: calc(var(--spacing) * 8);
  }
  .pr-0 {
    padding-right: calc(var(--spacing) * 0);
  }
  .pr-4 {
    padding-right: calc(var(--spacing) * 4);
  }
  .pb-0 {
    padding-bottom: calc(var(--spacing) * 0);
  }
  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }
  .pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
  }
  .pl-0 {
    padding-left: calc(var(--spacing) * 0);
  }
  .pl-2 {
    padding-left: calc(var(--spacing) * 2);
  }
  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }
  .pl-8 {
    padding-left: calc(var(--spacing) * 8);
  }
  .text-center {
    text-align: center;
  }
  .text-end {
    text-align: end;
  }
  .font-sans {
    font-family: var(--font-sans);
  }
  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .text-3xl {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  .text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .leading-6 {
    --tw-leading: calc(var(--spacing) * 6);
    line-height: calc(var(--spacing) * 6);
  }
  .leading-8 {
    --tw-leading: calc(var(--spacing) * 8);
    line-height: calc(var(--spacing) * 8);
  }
  .leading-loose {
    --tw-leading: var(--leading-loose);
    line-height: var(--leading-loose);
  }
  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }
  .leading-normal {
    --tw-leading: var(--leading-normal);
    line-height: var(--leading-normal);
  }
  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }
  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .font-light {
    --tw-font-weight: var(--font-weight-light);
    font-weight: var(--font-weight-light);
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }
  .text-balance {
    text-wrap: balance;
  }
  .break-all {
    word-break: break-all;
  }
  .break-keep {
    word-break: keep-all;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .whitespace-pre-wrap {
    white-space: pre-wrap;
  }
  .text-accent {
    color: var(--color-accent);
  }
  .text-accent-foreground {
    color: var(--color-accent-foreground);
  }
  .text-background {
    color: var(--color-background);
  }
  .text-blue-400 {
    color: var(--color-blue-400);
  }
  .text-blue-600 {
    color: var(--color-blue-600);
  }
  .text-blue-700 {
    color: var(--color-blue-700);
  }
  .text-card-foreground {
    color: var(--color-card-foreground);
  }
  .text-cyan-600 {
    color: var(--color-cyan-600);
  }
  .text-destructive {
    color: var(--color-destructive);
  }
  .text-foreground {
    color: var(--color-foreground);
  }
  .text-fuchsia-500 {
    color: var(--color-fuchsia-500);
  }
  .text-inherit {
    color: inherit;
  }
  .text-muted-foreground {
    color: var(--color-muted-foreground);
  }
  .text-neutral-500 {
    color: var(--color-neutral-500);
  }
  .text-neutral-900 {
    color: var(--color-neutral-900);
  }
  .text-orange-500 {
    color: var(--color-orange-500);
  }
  .text-primary-foreground {
    color: var(--color-primary-foreground);
  }
  .text-purple-700 {
    color: var(--color-purple-700);
  }
  .text-secondary {
    color: var(--color-secondary);
  }
  .text-secondary-foreground {
    color: var(--color-secondary-foreground);
  }
  .text-sky-400 {
    color: var(--color-sky-400);
  }
  .text-success {
    color: var(--color-success);
  }
  .text-white {
    color: var(--color-white);
  }
  .text-yellow-400 {
    color: var(--color-yellow-400);
  }
  .text-yellow-500 {
    color: var(--color-yellow-500);
  }
  .capitalize {
    text-transform: capitalize;
  }
  .lowercase {
    text-transform: lowercase;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .italic {
    font-style: italic;
  }
  .underline-offset-4 {
    text-underline-offset: 4px;
  }
  .opacity-0 {
    opacity: 0%;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .invert {
    --tw-invert: invert(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-100 {
    --tw-duration: 100ms;
    transition-duration: 100ms;
  }
  .ease-in {
    --tw-ease: var(--ease-in);
    transition-timing-function: var(--ease-in);
  }
  .ease-out {
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }
  .hover\:bg-accent {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-accent);
      }
    }
  }
  .hover\:bg-muted {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-muted);
      }
    }
  }
  .hover\:bg-secondary {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-secondary);
      }
    }
  }
  .hover\:text-foreground {
    &:hover {
      @media (hover: hover) {
        color: var(--color-foreground);
      }
    }
  }
  .hover\:underline {
    &:hover {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .hover\:underline-offset-4 {
    &:hover {
      @media (hover: hover) {
        text-underline-offset: 4px;
      }
    }
  }
  .disabled\:pointer-events-none {
    &:disabled {
      pointer-events: none;
    }
  }
  .disabled\:opacity-50 {
    &:disabled {
      opacity: 50%;
    }
  }
  .data-active\:bg-primary {
    &[data-active] {
      background-color: var(--color-primary);
    }
  }
  .data-closed\:opacity-0 {
    &[data-closed] {
      opacity: 0%;
    }
  }
  .data-\[disabled\=true\]\:pointer-events-none {
    &[data-disabled="true"] {
      pointer-events: none;
    }
  }
  .data-\[disabled\=true\]\:opacity-50 {
    &[data-disabled="true"] {
      opacity: 50%;
    }
  }
  .sm\:w-full {
    @media (width >= 40rem) {
      width: 100%;
    }
  }
  .sm\:p-12 {
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 12);
    }
  }
  .sm\:text-5xl {
    @media (width >= 40rem) {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }
  .sm\:text-lg {
    @media (width >= 40rem) {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
  }
  .xl\:w-2\/3 {
    @media (width >= 80rem) {
      width: calc(2/3 * 100%);
    }
  }
  .xl\:text-5xl {
    @media (width >= 80rem) {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }
  .dark\:bg-blue-600 {
    &:where(.dark, .dark *) {
      background-color: var(--color-blue-600);
    }
  }
  .dark\:bg-card {
    &:where(.dark, .dark *) {
      background-color: var(--color-card);
    }
  }
  .dark\:bg-white {
    &:where(.dark, .dark *) {
      background-color: var(--color-white);
    }
  }
  .dark\:text-card-foreground {
    &:where(.dark, .dark *) {
      color: var(--color-card-foreground);
    }
  }
  .\[\&_\.lexavatar\]\:ring-3 {
    & .lexavatar {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .\[\&_\.lexavatar\]\:ring-current {
    & .lexavatar {
      --tw-ring-color: currentcolor;
    }
  }
  .\[\&_a\]\:ml-auto {
    & a {
      margin-left: auto;
    }
  }
  .\[\&_canvas\]\:rounded {
    & canvas {
      border-radius: 0.25rem;
    }
  }
  .\[\&_div\]\:truncate {
    & div {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
  }
  .\[\&_input\]\:w-2\/3 {
    & input {
      width: calc(2/3 * 100%);
    }
  }
  .\[\&_p\]\:text-xs {
    & p {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
    }
  }
  .\[\&_span\]\:truncate {
    & span {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
  }
  .\[\&_svg\]\:pointer-events-none {
    & svg {
      pointer-events: none;
    }
  }
  .\[\&_svg\]\:shrink-0 {
    & svg {
      flex-shrink: 0;
    }
  }
}
@layer utilities {
  .scrollbar-hidden::-webkit-scrollbar {
    display: none;
  }
  .scrollbar-hidden {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcCm3FwrK3iLTcvnUwkT9nA2.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcCm3FwrK3iLTcvnUwAT9nA2.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcCm3FwrK3iLTcvnUwgT9nA2.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcCm3FwrK3iLTcvnUwcT9nA2.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcCm3FwrK3iLTcvnUwsT9nA2.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcCm3FwrK3iLTcvnUwoT9nA2.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcCm3FwrK3iLTcvnUwQT9g.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcCo3FwrK3iLTcvvYwYL8g.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcCo3FwrK3iLTcvmYwYL8g.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcCo3FwrK3iLTcvuYwYL8g.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcCo3FwrK3iLTcvhYwYL8g.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcCo3FwrK3iLTcvtYwYL8g.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcCo3FwrK3iLTcvsYwYL8g.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcCo3FwrK3iLTcviYwY.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "GeistSans";
  src: url("https://raw.githubusercontent.com/jxarco/lexgui.js/master/data/GeistSans.ttf");
}
@font-face {
  font-family: "CascadiaCode";
  src: url("https://raw.githubusercontent.com/jxarco/lexgui.js/master/data/CascadiaCode.ttf");
  font-weight: 400;
}
:root {
  color-scheme: dark;
  --global-font: "Inter", sans-serif;
  --global-title-font: "Inter", sans-serif;
  --global-code-font: "CascadiaCode", monospace;
  --radius: 0.625rem;
  --black: #000000;
  --white: #ffffff;
  --border: light-dark(#e5e5e5, #ffffff1a);
  --input: light-dark(#e5e5e5, #ffffff26);
  --ring: light-dark(#a1a1a1, #737373);
  --background: light-dark(#fafafa, #0a0a0a);
  --background-blur: light-dark(#f7f7f7d8, #1f1f1fe7);
  --foreground: light-dark(#0a0a0a, #fafafa);
  --card: light-dark(#fafafa, #171717);
  --card-foreground: light-dark(#0a0a0a, #fafafa);
  --primary: light-dark(#171717, #fafafa);
  --primary-foreground: light-dark(#fafafa, #171717);
  --secondary: light-dark(#e5e5e5, #262626);
  --secondary-foreground: light-dark(#171717, #e5e5e5);
  --muted: light-dark(#e5e5e5, #262626);
  --muted-foreground: light-dark(#737373, #a1a1a1);
  --accent: light-dark(#ddd, #404040);
  --accent-foreground: light-dark(#0a0a0a, #fafafa);
  --destructive: light-dark(#e40014, #ff6467);
  --destructive-foreground: light-dark(#fcf3f3, #df2225);
  --success: light-dark(#1ddb2d, #85f566);
  --warning: light-dark(#dfc622, #ffe864);
  --info: light-dark(#1d4ed8, #60a5fa);
  --info-foreground: light-dark(#fcf3f3, #1d4ed8);
  --selection: light-dark(#0a0a0a, #e5e5e5);
  --selection-foreground: light-dark(#fff, #171717);
  --global-chart-color-1: oklch(0.488 0.243 264.376);
  --global-chart-color-2: oklch(0.696 0.17 162.48);
  --global-chart-color-3: oklch(0.769 0.188 70.08);
  --global-chart-color-4: oklch(0.627 0.265 303.9);
  --global-chart-color-5: oklch(0.645 0.246 16.439);
  --svg-size-2xs: 0.5rem;
  --svg-size-xs: 0.7rem;
  --svg-size-sm: 0.85rem;
  --svg-size-md: 1rem;
  --svg-size-lg: 1.25rem;
  --svg-size-xl: 1.4rem;
  --svg-size-2xl: 1.6rem;
  --av-grid-scale: 1;
  --code-editor-font-size: 14px;
  --code-editor-row-height: 20px;
  --graphnode-background: 17, 17, 17;
}
:root[data-spacing="compact"] {
  --pad-xs: 0.075rem 0.25rem;
  --pad-sm: 0.15rem 0.25rem;
  --pad-md: 0.3rem;
  --pad-lg: 0.4rem;
  --pad-xl: 0.5rem;
  --pad-2xl: 0.75rem;
}
:root[data-mode="light"] {
  color-scheme: light;
}
.theme-blue {
  --primary: var(--color-blue-700);
  --primary-foreground: var(--color-blue-50);
}
.theme-blue:is(.dark *) {
  --primary: var(--color-blue-700);
  --primary-foreground: var(--color-blue-50);
}
.theme-green {
  --primary: var(--color-lime-600);
  --primary-foreground: var(--color-lime-50);
  --ring: var(--color-lime-400);
}
.theme-green:is(.dark *) {
  --primary: var(--color-lime-600);
  --primary-foreground: var(--color-lime-50);
  --ring: var(--color-lime-900);
}
.theme-amber {
  --primary: var(--color-amber-600);
  --primary-foreground: var(--color-amber-50);
  --ring: var(--color-amber-400);
}
.theme-amber:is(.dark *) {
  --primary: var(--color-amber-500);
  --primary-foreground: var(--color-amber-50);
  --ring: var(--color-amber-900);
}
.theme-rose {
  --primary: var(--color-rose-600);
  --primary-foreground: var(--color-rose-50);
  --ring: var(--color-rose-400);
}
.theme-rose:is(.dark *) {
  --primary: var(--color-rose-500);
  --primary-foreground: var(--color-rose-50);
  --ring: var(--color-rose-900);
}
.theme-purple {
  --primary: var(--color-purple-600);
  --primary-foreground: var(--color-purple-50);
  --ring: var(--color-purple-400);
}
.theme-purple:is(.dark *) {
  --primary: var(--color-purple-500);
  --primary-foreground: var(--color-purple-50);
  --ring: var(--color-purple-900);
}
.theme-orange {
  --primary: var(--color-orange-600);
  --primary-foreground: var(--color-orange-50);
  --ring: var(--color-orange-400);
}
.theme-orange:is(.dark *) {
  --primary: var(--color-orange-500);
  --primary-foreground: var(--color-orange-50);
  --ring: var(--color-orange-900);
}
.theme-teal {
  --primary: var(--color-teal-600);
  --primary-foreground: var(--color-teal-50);
}
.theme-teal:is(.dark *) {
  --primary: var(--color-teal-500);
  --primary-foreground: var(--color-teal-50);
}
.theme-red {
  --primary: var(--color-red-600);
  --primary-foreground: var(--color-red-50);
  --ring: var(--color-red-400);
}
.theme-red:is(.dark *) {
  --primary: var(--color-red-500);
  --primary-foreground: var(--color-red-50);
  --ring: var(--color-red-900);
}
.theme-yellow {
  --primary: var(--color-yellow-400);
  --primary-foreground: var(--color-yellow-900);
  --ring: var(--color-yellow-400);
}
.theme-yellow:is(.dark *) {
  --primary: var(--color-yellow-500);
  --primary-foreground: var(--color-yellow-900);
  --ring: var(--color-yellow-900);
}
.theme-violet {
  --primary: var(--color-violet-600);
  --primary-foreground: var(--color-violet-50);
  --ring: var(--color-violet-400);
}
.theme-violet:is(.dark *) {
  --primary: var(--color-violet-500);
  --primary-foreground: var(--color-violet-50);
  --ring: var(--color-violet-900);
}
::-webkit-scrollbar {
  height: 3px;
  width: 4px;
  background: none;
  margin-right: 2px;
}
::-webkit-scrollbar-thumb {
  background: #aaaaaaa5;
  border-radius: 6px;
}
::-webkit-scrollbar-corner {
  display: none;
}
::-webkit-scrollbar-thumb:hover {
  background: #aaaaaa;
}
::selection {
  background-color: var(--selection);
  color: var(--selection-foreground);
}
html, body {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  font-family: var(--global-font);
  background-color: var(--background);
}
#lexroot {
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  position: absolute;
  outline: none;
  transform-origin: center center;
  transition-property: transform, border-radius;
  transition-duration: 0.5s;
  transition-timing-function: cubic-bezier(0.32, 0.72, 0, 1);
}
:root[data-scale="sheet-top"] #lexroot {
  border-radius: 1rem;
  overflow: hidden;
  transform: scale(0.95, 0.95) translate(0, 1.25%);
  bottom: 0 !important;
}
:root[data-scale="sheet-bottom"] #lexroot {
  border-radius: 1rem;
  overflow: hidden;
  transform: scale(0.95, 0.95) translate(0, -2.5%);
}
:root[data-scale="sheet-left"] #lexroot {
  border-radius: 1rem;
  overflow: hidden;
  transform: scale(0.95, 0.95);
}
:root[data-scale="sheet-right"] #lexroot {
  border-radius: 1rem;
  overflow: hidden;
  transform: scale(0.95, 0.95);
}
:root[data-scale="sheet-right"] body {
  padding-bottom: 1rem;
}
:root[data-layout="document"] #lexroot {
  bottom: unset;
}
:root[data-layout="document"], :root[data-layout="document"] body {
  overflow-y: auto;
}
*, *::before, *::after {
  box-sizing: border-box;
}
* {
  outline-color: var(--ring);
}
.no-transition, .no-transition * {
  transition: none !important;
}
blockquote, dd, dl, figure, h1, h2, h3, h4, h5, h6, hr, p, pre {
  margin: 0;
}
.collapsible {
  width: 100%;
  display: flex;
}
.collapsible a.collapser {
  --rotation: 90deg;
  transform: rotate(var(--rotation, 0deg));
  transition: transform 0.15s ease-out;
}
.collapsible a.collapser[data-collapsed] {
  --rotation: 0deg;
}
dialog {
  transition: display 0.1s allow-discrete, overlay 0.1s allow-discrete;
  animation: dialogHide 0.1s forwards;
}
dialog[open] {
  animation: dialogShow 0.1s forwards;
}
dialog::backdrop {
  background-color: #000000ab;
  position: absolute;
  opacity: 1;
  transition: opacity 0.2s ease-in;
}
@keyframes dialogShow {
  from {
    opacity: 0;
    transform: translate3d(0, -8px, 0) scale3d(0.92, 0.92, 0.92) rotate(0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotate(0);
  }
}
@keyframes dialogHide {
  from {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotate(0);
  }
  to {
    opacity: 0;
    transform: translate3d(0, -8px, 0) scale3d(0.92, 0.92, 0.92) rotate(0);
  }
}
input:autofill, input:-webkit-autofill {
  transition: background-color 50000s ease-in-out 0s;
}
body.nocursor * {
  cursor: none !important;
}
body.noevents * {
  pointer-events: none !important;
}
.grabbing {
  cursor: move;
}
.hidden-opacity {
  opacity: 0 !important;
  pointer-events: none;
}
.ellipsis-overflow {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.overflow-mask {
  --scrollbar-width: 0px;
  --mask-height: 32px;
  padding-bottom: var(--mask-height);
  --mask-image-content: linear-gradient(to bottom, black calc(100% - var(--mask-height)), transparent);
  --mask-size-content: calc(100% - var(--scrollbar-width)) 100%;
  --mask-image-scrollbar: linear-gradient(black, black);
  --mask-size-scrollbar: var(--scrollbar-width) 100%;
  mask-image: var(--mask-image-content), var(--mask-image-scrollbar);
  mask-size: var(--mask-size-content), var(--mask-size-scrollbar);
  mask-position: 0 0, 100% 0;
  mask-repeat: no-repeat, no-repeat;
}
svg.\32xs {
  width: var(--svg-size-2xs);
  height: var(--svg-size-2xs);
}
svg.xs {
  width: var(--svg-size-xs);
  height: var(--svg-size-xs);
}
svg.sm {
  width: var(--svg-size-sm);
  height: var(--svg-size-sm);
}
svg.md {
  width: var(--svg-size-md);
  height: var(--svg-size-md);
}
svg.lg {
  width: var(--svg-size-lg);
  height: var(--svg-size-lg);
}
svg.xl {
  width: var(--svg-size-xl);
  height: var(--svg-size-xl);
}
svg.\32xl {
  width: var(--svg-size-2xl);
  height: var(--svg-size-2xl);
}
.leximage {
  text-align: center;
}
.leximage img {
  max-width: 256px;
}
.lock {
  margin-left: 4px;
}
.lexicon {
  cursor: pointer;
  line-height: inherit !important;
  color: inherit;
  align-content: center;
  border-radius: 4px;
  transition: all 0.15s linear;
  place-self: center;
}
.lexicon.triggered {
  background-color: var(--secondary);
}
svg {
  width: 1rem;
  height: 1rem;
  stroke: currentColor;
  display: block;
  & * {
    stroke: inherit;
  }
}
a svg, svg path {
  pointer-events: none;
}
.notifications ol {
  width: unset;
  min-width: fit-content;
  max-width: 480px;
  max-height: 100vh;
  pointer-events: none;
}
.notifications ol.list {
  pointer-events: auto;
}
.lextoast {
  background-color: light-dark(var(--muted), var(--secondary));
  box-shadow: 0 0px 6px 2px rgba(0, 0, 0, 0.15);
  z-index: 3000;
  transition: all 0.5s cubic-bezier(.42,.97,.52,1.19);
  --element-offset: 0.5rem;
  --stack-offset: calc(100% - var(--element-offset));
  & .lexcomponent {
    padding-inline: 1rem;
  }
}
.lextoast.top {
  --stack-offset: calc(-100% + var(--element-offset));
}
.lextoast[data-open="true"] {
  translate: 0 0 !important;
}
.lextoast[data-open="false"] {
  translate: 100% 0 !important;
  opacity: 0 !important;
}
.lextoast.center[data-open="false"] {
  translate: 0 30px !important;
}
.lextoast.center.top[data-open="false"] {
  translate: 0 -30px !important;
}
.lextoast.left[data-open="false"] {
  translate: -100% 0 !important;
}
.lextoast:first-child {
  z-index: 3000;
  transform: translateY(0px) scale(1);
}
.lextoast:nth-child(2) {
  z-index: 2999;
  opacity: 0.9;
  transform: translateY(var(--stack-offset)) scale(0.95);
}
.lextoast:nth-child(3) {
  z-index: 2998;
  opacity: 0.8;
  transform: translateY(calc(var(--stack-offset) * 2)) scale(0.9);
}
.lextoast:nth-child(n+4) {
  opacity: 0;
  transform: translateY(calc(var(--stack-offset) * 3)) scale(0.9);
}
.notifications ol.list .lextoast {
  transform: translateY(0px) scale(1);
  opacity: 1;
}
.commandbar {
  background-color: var(--background-blur);
  --webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  width: 40%;
  max-width: 740px;
  left: calc(50% - min(20%, 370px));
  padding: 0 0 2px 0;
  flex-wrap: wrap;
  z-index: 105;
  -webkit-mask-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC);
  mask-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC);
}
.commandbar[open] {
  display: flex;
}
.commandbar .lexarea {
  background: none !important;
}
.commandbar .searchitembox {
  max-height: calc(512px - 48px);
}
.commandbar .searchitembox .searchitem {
  padding: 6px;
  padding-left: 48px;
  color: var(--foreground);
  font-size: var(--text-sm);
  cursor: pointer;
  display: flex;
  align-items: center;
}
.commandbar .searchitembox .searchitem svg:not(.separator) {
  margin-left: -28px;
  margin-right: 12px;
}
.commandbar .searchitembox .searchitem .lang-ext {
  margin-left: 4px;
  color: #676e75;
  font-size: var(--text-sm);
}
.commandbar .searchitembox .searchitem.last {
  border-bottom-left-radius: 6px;
  border-bottom-right-radius: 6px;
}
.commandbar .searchitembox .searchitem.hovered {
  background-color: var(--accent);
  color: #f5f5f5;
}
.lexfooter {
  & ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
    margin-bottom: 12px;
  }
  & h2 {
    margin-block-start: 0.83em;
    margin-block-end: 0.83em;
    font-weight: 600;
    font-size: var(--text-lg);
  }
  & ul li {
    margin-bottom: 8px;
    font-size: var(--text-sm);
    color: var(--muted-foreground);
  }
  & ul li a {
    display: flex;
    gap: 0.4rem;
    align-items: center;
    place-content: center;
  }
  & a {
    text-decoration: none;
    color: var(--foreground);
    transition: all 0.15s ease-in-out;
  }
  & .credits-and-socials {
    color: var(--muted-foreground);
    display: grid;
    align-items: center;
    grid-template-columns: 1fr 1fr;
    padding-inline: 36px;
  }
  & .credits-and-socials p {
    font-size: var(--text-xs);
  }
  & hr {
    border: none;
    border-top: 1px solid #2c2c2c;
  }
}
@media (max-width: 768px) {
  .lexfooter .credits-and-socials {
    display: block;
    text-align: center;
  }
  .lexfooter .socials {
    justify-content: center;
  }
}
.lexdialog {
  box-shadow: 0 2px 4px #10101059;
  z-index: 101;
  &:has(.lexselect) {
    overflow: visible;
  }
}
.lexdialogtitle {
  font-family: var(--global-title-font);
  text-shadow: 0px 1px 4px var(--border);
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
}
.lexdialogcontent {
  border-bottom-left-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
  &.notitle {
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
  }
}
.lexdialogcloser {
  &.notitle {
    position: absolute;
    top: 0.75em;
    right: 0.75em;
  }
  &:hover {
    color: var(--muted-foreground);
  }
  &:active {
    transform: scale(0.99);
  }
  &.notitle:active {
    transform: scale(0.99);
  }
}
.lexdialog.prompt textarea {
  color: var(--secondary-foreground);
}
.lexdialog.pocket {
  background-color: var(--background);
}
.lexdialog.pocket.dockable {
  transition: ease-out left 0.2s, ease-out top 0.2s, ease-in transform 0.2s;
}
.lexdialog.pocket .lexdialogtitle {
  width: 100%;
  font-size: var(--text-lg);
  background: var(--background);
}
.lexdialog.pocket .lexdialogcontent {
  max-height: -webkit-fill-available;
  opacity: 1;
  transition: max-height 0.2s, opacity 0.2s;
}
.lexdialog.pocket .lexdialogcontent:not(:has(div)) {
  padding: 0px;
}
.lexdialog.pocket.minimized .lexdialogtitle {
  border-bottom-left-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}
.lexdialog.pocket.minimized .lexdialogcontent {
  max-height: 0px;
  padding: 0px;
  opacity: 0;
  transition: max-height 0.2s, opacity 0.2s, padding 0.2s;
}
.lexcontainer.wrapper {
  margin-left: auto;
  margin-right: auto;
  max-width: 1600px;
  border: 0px solid var(--input);
}
@media (min-width: 1600px) {
  .lexcontainer.wrapper {
    border-left-width: 1px;
    border-right-width: 1px;
  }
}
@media (min-width: 1800px) {
  .lexcontainer.wrapper {
    max-width: 1736px;
  }
}
@media (min-width: 2100px) {
  .lexcontainer.wrapper {
    max-width: 1920px;
  }
}
@media (min-width: 2300px) {
  .lexcontainer.wrapper {
    max-width: 2140px;
  }
}
.lextooltip {
  transition: opacity 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  animation-duration: 400ms;
  animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform, opacity;
  animation-name: slideUpAndFade;
  z-index: 150;
}
.lexpopover {
  z-index: 150;
  animation-duration: 400ms;
  animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform, opacity;
}
@keyframes slideUpAndFade {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideRightAndFade {
  from {
    opacity: 0;
    transform: translateX(-8px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes slideDownAndFade {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideLeftAndFade {
  from {
    opacity: 0;
    transform: translateX(8px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.lexpopover[data-side="top"] {
  animation-name: slideDownAndFade;
}
.lexpopover[data-side="right"] {
  animation-name: slideLeftAndFade;
}
.lexpopover[data-side="bottom"] {
  animation-name: slideUpAndFade;
}
.lexpopover[data-side="left"] {
  animation-name: slideRightAndFade;
}
.lexsheet {
  animation-duration: 400ms;
  animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform, opacity;
}
@keyframes enterBottom {
  from {
    opacity: 0;
    transform: translateY(100%);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes enterLeft {
  from {
    opacity: 0;
    transform: translateX(-100%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes enterTop {
  from {
    opacity: 0;
    transform: translateY(-100%);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes enterRight {
  from {
    opacity: 0;
    transform: translateX(100%);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.lexsheet[data-side="top"] {
  animation-name: enterTop;
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: 1rem;
}
.lexsheet[data-side="right"] {
  animation-name: enterRight;
  border-top-left-radius: 1rem;
  border-bottom-left-radius: 1rem;
}
.lexsheet[data-side="bottom"] {
  animation-name: enterBottom;
  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem;
}
.lexsheet[data-side="left"] {
  animation-name: enterLeft;
  border-top-right-radius: 1rem;
  border-bottom-right-radius: 1rem;
}
.lexdropdownmenu {
  background-color: var(--card);
  font-size: var(--text-sm);
  position: fixed;
  left: 0px;
  top: 0px;
  min-width: 172px;
  max-width: 220px;
  z-index: 150;
  display: flex;
  flex-direction: column;
  padding: var(--pad-xs);
  border-radius: 0.5rem;
  border: 1px solid var(--input);
  outline: none;
  animation-duration: 400ms;
  animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform, opacity;
}
.lexdropdownmenuitem {
  transition: all 0.1s linear;
  &.disabled {
    color: var(--muted-foreground);
    cursor: default;
  }
  &.label {
    font-weight: 600;
    cursor: default;
  }
  & span {
    max-width: 99%;
  }
  &:not(.label, .disabled):hover {
    background-color: var(--secondary);
  }
  &:not(.label, .disabled):active {
    transform: scale(0.99);
  }
  & .lexcheckbox {
    width: 1.25em;
    height: 1.25em;
  }
  & a {
    margin-left: auto;
    align-content: center;
    pointer-events: none;
  }
  & a:first-child {
    margin: 0;
  }
}
.lexdropdownmenuitem.destructive {
  color: var(--destructive);
}
.lexdropdownmenuitem.destructive:hover {
  background-color: var(--destructive);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--destructive) 15%, transparent);
  }
}
.lexdropdownmenu .separator {
  width: calc(100% + 0.4rem);
  translate: -0.2rem 0;
  border-bottom: 1px solid;
  border-color: var(--input);
  margin-block: 0.1rem;
}
.lexdropdownmenu[data-side="top"] {
  animation-name: slideDownAndFade;
}
.lexdropdownmenu[data-side="right"] {
  animation-name: slideLeftAndFade;
}
.lexdropdownmenu[data-side="bottom"] {
  animation-name: slideUpAndFade;
}
.lexdropdownmenu[data-side="left"] {
  animation-name: slideRightAndFade;
}
.lexsplitbar {
  background: var(--border);
  border-radius: 8px;
}
.lexsplitbar.horizontal {
  cursor: ew-resize;
}
.lexsplitbar.vertical {
  cursor: ns-resize;
  left: calc(50% - 32px);
}
.lexsplitbar:hover {
  background: var(--input);
}
.lexpanel .lexbranch:not(:last-of-type) {
  margin-bottom: 4px !important;
}
.lexbranch .lexbranchcontent {
  border-bottom-left-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}
.lexbranch.last .lexbranchcontent {
  overflow: hidden;
}
.lexbranchtitle {
  font-family: var(--global-title-font);
  font-weight: 500;
  text-shadow: 0px 1px 4px var(--border);
  letter-spacing: calc(var(--text-lg) * 0.025);
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
  white-space: nowrap;
}
.lexbranch.closed .lexbranchtitle {
  background-color: inherit;
  border-bottom-left-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}
.lexbranch .branchicon {
  font-size: var(--text-sm);
  margin-right: 12px;
  align-content: center;
}
.lexbranch .switch-branch-button {
  font-size: var(--text-sm);
  transition: transform 0.15s ease-out;
  margin-left: auto;
  margin-right: 8px;
  align-content: center;
  transform: rotate(90deg);
}
.lexbranch.closed .switch-branch-button {
  transform: rotate(0deg);
}
.lexcomponent {
  transition: background-color 0.1s linear;
}
.lexinlinecomponents .lexcomponentname.float-center {
  justify-content: center;
}
.lexinlinecomponents .lexcomponentname.float-right {
  justify-content: end;
  -moz-transform: translateX(-1em);
  -webkit-transform: translateX(-1em);
  transform: translateX(-1em);
}
.lexcomponent.right {
  margin-left: auto;
  margin-right: 8px;
}
.lexinlinecomponents {
  display: flex;
}
.lexcomponentseparator div {
  -ms-transform: translateY(-11px);
  -webkit-transform: translateY(-11px);
  transform: translateY(-11px);
  height: 2px;
  width: 11px;
  cursor: ew-resize;
  color: var(--muted-foreground);
}
.lexcomponentseparator div:hover {
  color: #4d4d5ac4;
}
.lexcomponentseparator div div {
  background: #dddddd33;
}
.lexinlinecomponents .lexcomponentname {
  width: fit-content !important;
  padding-inline: 0.4rem;
}
.lexseparator {
  border-top: 1px solid var(--secondary);
  border-bottom: 1px solid var(--background);
  margin: 5px 0 5px 0px;
}
.lexbranch .lexseparator {
  border-top: 1px solid var(--secondary);
  border-bottom: 1px solid var(--background);
  width: -moz-calc(100% - 8px);
  width: -webkit-calc(100% - 8px);
  width: calc(100% - 8px);
  margin: 5px 0 5px 4px;
}
:root[data-mode="light"] .lexbranch .lexseparator {
  border-top: 1px solid #e7e7e7;
  border-bottom: 1px solid #c1c1c1;
}
.lexcomponent input {
  font-family: var(--global-font);
  border-radius: 0.5rem;
  border: 1px solid transparent;
  transition-property: color, background-color, border-color;
  transition-timing-function: ease-out;
  transition-duration: .15s;
  outline: none;
}
.lexcomponent input:not(.lexcheckbox, .lextoggle, .lexrangeslider, .lexcounter) {
  padding: var(--pad-sm);
  padding-inline: 0.5rem;
  color: var(--secondary-foreground);
  --background-color: var(--secondary);
  background-color: var(--background-color);
}
.lexcomponent input:not(.lexcheckbox, .lextoggle, .lexrangeslider, .lexinputslider, .outline):hover {
  background-color: var(--background-color);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in srgb, var(--background-color), #000 5%);
  }
}
.lexcomponent input.colorinput {
  border: none;
  margin-left: -4px;
}
.lexcomponent input:disabled:not(.lextoggle) {
  outline: none;
  border: none;
  color: var(--muted-foreground);
}
.lexcomponent input.lextext, .lexcomponent div.lextext {
  width: 100%;
  border-radius: 0.5rem;
  position: relative;
  border: 1px solid transparent;
}
.lexcomponent .lextext:disabled {
  background-color: var(--muted);
  color: var(--muted-foreground);
}
.lexcomponent .lextext.formlabel {
  margin-left: 0.5rem;
  margin-bottom: -0.125rem;
  font-weight: 500;
  padding: 0;
}
.lexcomponent .lextext.outline {
  background-color: var(--input);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--input)30%, transparent);
  }
  border: 1px solid var(--border);
}
.lexcomponent .lextext.bg-none {
  background: none;
  border: 1px solid transparent;
}
.lexcomponent .lextext.dashed {
  background-color: var(--input);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--input)30%, transparent);
  }
  border: 1px dashed var(--border);
}
.lexcomponent .lextext.bg-none:hover {
  background: none;
}
.lexcomponent .lextext:focus {
  border: 1px solid var(--muted-foreground);
}
.lexcomponent .lextext:invalid:focus {
  border: 1px solid var(--destructive);
}
.lexcomponent .lextext.lexwarning div {
  color: var(--warning);
  font-weight: 600;
}
.lexcomponent .lextext.lexwarning i {
  color: var(--warning);
  margin-right: 16px;
}
.lexcomponent textarea {
  width: 100%;
  word-break: break-word;
  font-family: var(--global-font);
  font-size: var(--text-sm);
  background: none;
  padding: var(--pad-md);
  color: var(--foreground);
  outline: none;
  border-radius: 6px;
  border: 1px solid transparent;
  transition: 0.1s linear;
}
.lexcomponent textarea.outline {
  background-color: var(--input);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--input)30%, transparent);
  }
  border: 1px solid var(--border);
}
.lexcomponent textarea.bg-none {
  background: none;
  border: 1px solid transparent;
}
.lexcomponent textarea.dashed {
  background-color: var(--input);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--input)30%, transparent);
  }
  border: 1px dashed var(--border);
}
.lexcomponent textarea.outline:hover, .lexcomponent .lextext.bg-none:hover {
  background: none;
}
.lexcomponent textarea:disabled {
  resize: none;
}
.lexcomponent textarea:focus {
  border: 1px solid var(--muted-foreground);
}
.lexcolor {
  display: flex;
  align-items: center;
  & .lexcolorsample {
    width: 9px;
    height: 18px;
    cursor: pointer;
    background-color: currentColor;
  }
  & .lexcomponent {
    padding: 0px;
  }
}
.lexcolor > div:first-child {
  background: repeating-conic-gradient(#ccc 0% 25%, #fff 0% 50%) 50% / 12px 12px;
}
.lexcolorpicker input.lextext {
  padding-inline: 0 !important;
  color: var(--secondary-foreground) !important;
  cursor: pointer;
}
.lexcolorpickerbg {
  background-image: linear-gradient(0deg, #000000 0, transparent), linear-gradient(90deg, #ffffff 0, #fff0);
}
.lexhuetracker {
  background-image: linear-gradient(-90deg, red, #f0f 17%, #00f 33%, #0ff, #0f0 67%, #ff0 83%, red);
}
.lexalphatracker {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0), currentColor), repeating-conic-gradient(#ccc 0% 25%, #fff 0% 50%) 50% / 12px 12px;
  background-color: white;
}
.lexcolorpicker * {
  font-size: var(--text-sm);
}
.lexcolorpicker .lextext {
  letter-spacing: 0.02rem;
}
.lexcolorpicker .lexcomponent {
  padding: 2px !important;
}
.lextitle {
  padding: var(--pad-sm) var(--pad-xl);
}
.lexinlinecomponents .lextitle {
  margin: 8px;
  height: 24px;
  flex: none;
}
.lextitle.link {
  color: var(--secondary-foreground);
  transition: transform 0.1s;
}
.lextitle.link:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
  transform: scale(1.01);
}
.lexbutton {
  --button-color: #0000;
  --border-color: #0000;
  background-color: var(--button-color);
  border-style: var(--tw-border-style);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  border-color: #0000;
  min-width: calc(var(--spacing)*8);
  gap: calc(var(--spacing)*1.5);
  border-radius: calc(var(--radius) - 2px);
  & svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
}
.lexbutton.primary {
  --button-color: var(--primary);
  color: var(--primary-foreground);
}
.lexbutton.primary:hover {
  --button-color: var(--primary);
  @supports (color: color-mix(in lab, red, red)) {
    --button-color: color-mix(in oklab, var(--primary) 80%, transparent);
  }
}
.lexbutton.secondary {
  --button-color: var(--secondary);
  color: var(--secondary-foreground);
}
.lexbutton.secondary:hover {
  --button-color: var(--secondary);
  @supports (color: color-mix(in lab, red, red)) {
    --button-color: color-mix(in oklab, var(--secondary) 80%, transparent);
  }
}
.lexbutton.muted {
  --button-color: var(--muted);
  color: var(--muted-foreground);
}
.lexbutton.muted:hover {
  --button-color: var(--muted);
  @supports (color: color-mix(in lab, red, red)) {
    --button-color: color-mix(in oklab, var(--muted) 80%, transparent);
  }
}
.lexbutton.success {
  --button-color: var(--success);
  @supports (color: color-mix(in lab, red, red)) {
    --button-color: color-mix(in oklab, var(--success) 10%, transparent);
  }
  color: var(--success);
}
.lexbutton.success:hover {
  --button-color: var(--success);
  @supports (color: color-mix(in lab, red, red)) {
    --button-color: color-mix(in oklab, var(--success) 30%, transparent);
  }
}
.lexbutton.warning {
  --button-color: var(--warning);
  @supports (color: color-mix(in lab, red, red)) {
    --button-color: color-mix(in oklab, var(--warning) 10%, transparent);
  }
  color: var(--warning);
}
.lexbutton.warning:hover {
  --button-color: var(--warning);
  @supports (color: color-mix(in lab, red, red)) {
    --button-color: color-mix(in oklab, var(--warning) 30%, transparent);
  }
}
.lexbutton.destructive {
  --button-color: var(--destructive);
  @supports (color: color-mix(in lab, red, red)) {
    --button-color: color-mix(in oklab, var(--destructive) 10%, transparent);
  }
  color: var(--destructive);
}
.lexbutton.destructive:hover {
  --button-color: var(--destructive);
  @supports (color: color-mix(in lab, red, red)) {
    --button-color: color-mix(in oklab, var(--destructive) 30%, transparent);
  }
}
.lexbutton.outline, .lexbutton.dashed {
  border-color: var(--input);
  --button-color: var(--input);
  @supports (color: color-mix(in lab, red, red)) {
    --button-color: color-mix(in oklab, var(--input) 30%, transparent);
  }
  --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, #0000000d);
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.lexbutton.dashed {
  border-width: 1px;
  border-style: dashed;
}
.lexbutton.outline:hover, .lexbutton.dashed:hover {
  --button-color: var(--input);
  @supports (color: color-mix(in lab, red, red)) {
    --button-color: color-mix(in oklab, var(--input) 60%, transparent);
  }
}
.lexbutton.ghost:hover {
  background-color: var(--muted);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--muted) 50%, transparent);
  }
}
.lexbutton.link {
  color: var(--primary);
  text-underline-offset: 4px;
}
.lexbutton.link:hover {
  text-decoration-line: underline;
}
.lexbutton.selected {
  --button-color: var(--primary);
  --border-color: var(--input);
  color: var(--primary-foreground);
}
.lexbutton.selected:hover {
  --button-color: var(--primary);
  @supports (color: color-mix(in lab, red, red)) {
    --button-color: color-mix(in oklab, var(--primary) 80%, transparent);
  }
}
.lexbutton.xs {
  height: calc(var(--spacing)*6);
  gap: calc(var(--spacing)*1);
  border-radius: min(var(--radius-md),8px);
  padding-inline: calc(var(--spacing)*2);
  font-size: var(--text-xs);
  line-height: var(--tw-leading,var(--text-xs--line-height));
}
.lexbutton.xs:has([data-icon=inline-end]) {
  padding-right: calc(var(--spacing)*1.5);
}
.lexbutton.xs:has([data-icon=inline-start]) {
  padding-left: calc(var(--spacing)*1.5);
}
.lexbutton.xs svg {
  width: calc(var(--spacing)*3);
  height: calc(var(--spacing)*3);
}
.lexbutton.sm {
  height: calc(var(--spacing)*8);
  gap: calc(var(--spacing)*1);
  border-radius: min(var(--radius-md),10px);
  padding-inline: calc(var(--spacing)*2.5);
}
.lexbutton.sm:has([data-icon=inline-end]) {
  padding-right: calc(var(--spacing)*1.5);
}
.lexbutton.sm:has([data-icon=inline-start]) {
  padding-left: calc(var(--spacing)*1.5);
}
.lexbutton.md:has([data-icon=inline-end]) {
  padding-right: calc(var(--spacing)*2);
}
.lexbutton.md:has([data-icon=inline-start]) {
  padding-left: calc(var(--spacing)*2);
}
.lexbutton.lg {
  height: calc(var(--spacing)*10);
  gap: calc(var(--spacing)*1.5);
  padding-inline: calc(var(--spacing)*2.5);
  font-size: var(--text-base);
  line-height: var(--tw-leading,var(--text-base--line-height));
}
.lexbutton.lg:has([data-icon=inline-end]) {
  padding-right: calc(var(--spacing)*3);
}
.lexbutton.lg:has([data-icon=inline-start]) {
  padding-left: calc(var(--spacing)*3);
}
.lexcombobuttons .lexbutton.combo {
  width: auto !important;
  height: calc(var(--spacing)*8);
  display: flex;
  padding-inline: 1em;
  transition: 0.15s ease-in;
  --button-color: var(--secondary);
}
.lexcombobuttons .lexbutton.combo:not(.selected):hover {
  color: var(--secondary-foreground);
  background-color: var(--card);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--card) 60%, transparent);
  }
}
.lexcombobuttons .lexbutton.combo.selected {
  --button-color: var(--primary);
  color: var(--primary-foreground);
  outline: none;
}
.lexcombobuttons .lexbutton.combo span {
  line-height: 18px;
}
.lexselect {
  display: grid;
  align-content: center;
  position: relative;
}
.lexselect .lexcomponent {
  padding: 0;
}
.lexselect .lexfilter {
  width: 100%;
  padding: 2px 3px;
  background-color: var(--card);
  border-bottom: 1px solid;
  border-color: var(--input);
}
.lexselect .lexfilter input:hover {
  background-color: var(--secondary);
}
.lexselect ul .lexlistitem {
  font-size: var(--text-sm);
}
.lexselect .option {
  display: flex;
  align-items: center;
  width: 100%;
  position: relative;
}
.lexselect .option.media {
  flex-direction: column;
}
.lexselect .lexlistitem {
  height: fit-content;
}
.lexselect .lexselectoptions {
  background-color: var(--card);
  margin: 0;
  padding: 0;
  outline: none;
  width: fit-content;
  position: fixed;
  z-index: 10000;
  box-shadow: 0 0px 4px rgba(0, 0, 0, 0.203);
  border-radius: 0.5rem;
  border: 1px solid var(--input);
  overflow-y: auto;
  overflow-x: hidden;
}
dialog .lexselect .lexselectoptions {
  max-height: none;
}
.lexselect ul {
  margin: 0 !important;
  list-style: none !important;
  z-index: 10;
  width: 100%;
  height: 100%;
  padding: 0.3rem;
}
.lexselect .lexselectitem {
  width: 100%;
  cursor: pointer;
  color: var(--foreground);
  min-height: 20px;
  line-height: 22px;
  padding-inline: 0.35rem;
  padding-block: 0.2rem;
  border-radius: 6px;
  align-content: center;
  display: flow-root;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.lexselect .lexselectlabel {
  width: 100%;
  color: var(--muted-foreground);
  padding-inline: 0.6rem;
  padding-block: 0.2rem;
  min-height: 20px;
  line-height: 22px;
  align-content: center;
  display: flow-root;
  font-weight: 500;
}
.lexselect .lexselectitem.empty {
  cursor: default;
}
.lexselect .lexselectitem.empty .option {
  padding: 12px;
}
.lexselect .lexselectitem:not(.empty):hover {
  background-color: var(--secondary);
}
.lexselect .lexselectitem:not(.empty):active {
  color: #fff;
}
.lexselect .lexselectitem a {
  display: none;
  margin-left: auto;
  margin-right: 0.25rem;
  padding-left: 1rem;
}
.lexselect .lexselectitem.selected {
  font-weight: 600;
}
.lexselect .lexselectitem.selected a {
  display: block;
}
.lexselect img {
  max-height: 4rem;
  margin-top: 0.5rem;
}
.lexcheckbox {
  --checkbox-bg-color: var(--card);
  --checkbox-bg-checked-color: var(--secondary);
  --checkbox-fg-color: #fff;
  vertical-align: middle;
  flex-shrink: 0;
  transition: background-color .2s,box-shadow .2s;
  position: relative;
  width: 1.5em;
  height: 1.5em;
  padding: 0.12rem;
  padding-left: 0.13rem;
  display: inline-block;
  background-color: var(--checkbox-bg-color);
  color: var(--checkbox-fg-color);
  border-width: 1px;
  border-style: solid;
  border-color: var(--border) !important;
  border-radius: 0.35rem !important;
  text-align: center;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
}
.lexcheckbox.primary {
  --checkbox-fg-color: var(--primary-foreground);
  --checkbox-bg-color: var(--card);
  --checkbox-bg-checked-color: var(--primary);
}
.lexcheckbox.secondary {
  --checkbox-fg-color: var(--secondary-foreground);
  --checkbox-bg-checked-color: var(--secondary);
}
.lexcheckbox.success {
  --checkbox-fg-color: var(--success);
  --checkbox-bg-color: var(--success);
  @supports (color: color-mix(in lab, red, red)) {
    --checkbox-bg-color: color-mix(in oklab, var(--success)10%, transparent);
  }
  --checkbox-bg-checked-color: var(--success);
  @supports (color: color-mix(in lab, red, red)) {
    --checkbox-bg-checked-color: color-mix(in oklab, var(--success)30%, transparent);
  }
}
.lexcheckbox.warning {
  --checkbox-fg-color: var(--warning);
  --checkbox-bg-color: var(--warning);
  @supports (color: color-mix(in lab, red, red)) {
    --checkbox-bg-color: color-mix(in oklab, var(--warning)10%, transparent);
  }
  --checkbox-bg-checked-color: var(--warning);
  @supports (color: color-mix(in lab, red, red)) {
    --checkbox-bg-checked-color: color-mix(in oklab, var(--warning)10%, transparent);
  }
}
.lexcheckbox.destructive {
  --checkbox-fg-color: var(--destructive);
  --checkbox-bg-color: var(--destructive);
  @supports (color: color-mix(in lab, red, red)) {
    --checkbox-bg-color: color-mix(in oklab, var(--destructive)10%, transparent);
  }
  --checkbox-bg-checked-color: var(--destructive);
  @supports (color: color-mix(in lab, red, red)) {
    --checkbox-bg-checked-color: color-mix(in oklab, var(--destructive)10%, transparent);
  }
}
.lexcheckbox:before {
  content: "";
  opacity: 0;
  clip-path: polygon(20% 100%,20% 80%,50% 80%,50% 80%,70% 80%,70% 100%);
  width: 100%;
  height: 100%;
  background-color: currentColor;
  line-height: .75;
  transition: clip-path .3s .1s,opacity .1s .1s,rotate .3s .1s,translate .3s .1s;
  display: block;
  rotate: 45deg;
}
.lexcheckbox:checked,.lexcheckbox[aria-checked=true] {
  background-color: var(--checkbox-bg-checked-color);
}
.lexcheckbox:checked:before, .lexcheckbox[aria-checked=true]:before {
  clip-path: polygon(20% 100%,20% 80%,50% 80%,50% 0%,70% 0%,70% 100%);
  opacity: 1;
}
.lexcheckboxsubmenu {
  width: 100%;
  padding: 4px;
  padding-inline: 8px;
  color: var(--secondary-foreground);
  grid-column: span 2;
}
.lexcheckboxsubmenu .lexcomponent {
  width: 100% !important;
}
.lextoggle {
  --toggle-bg-color: var(--muted-foreground);
  --toggle-fg-color: #f4f4f6;
  --toggle-fg-checked-color: #f4f4f6;
  border: 1px solid transparent;
  color: var(--toggle-fg-color);
  background-color: var(--secondary);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  border-radius: 1rem !important;
  width: 40px;
  height: 21px;
  flex-shrink: 0;
  grid-template-columns: 0fr 1fr 1fr;
  transition: color 0.3s, grid-template-columns 0.2s;
}
.lextoggle.outline {
  border: 1px solid transparent;
}
.lextoggle.primary {
  --toggle-bg-color: var(--primary);
  --toggle-fg-checked-color: var(--primary-foreground);
}
.lextoggle.secondary {
  --toggle-bg-color: var(--muted);
  --toggle-fg-checked-color: var(--secondary-foreground);
}
.lextoggle.success {
  --toggle-fg-color: var(--success);
  --toggle-fg-checked-color: var(--success);
  --toggle-bg-color: var(--success);
  @supports (color: color-mix(in lab, red, red)) {
    --toggle-bg-color: color-mix(in oklab, var(--success) 40%, transparent);
  }
}
.lextoggle.warning {
  --toggle-fg-color: var(--warning);
  --toggle-fg-checked-color: var(--warning);
  --toggle-bg-color: var(--warning);
  @supports (color: color-mix(in lab, red, red)) {
    --toggle-bg-color: color-mix(in oklab, var(--warning) 40%, transparent);
  }
}
.lextoggle.destructive {
  --toggle-fg-color: var(--destructive);
  --toggle-fg-checked-color: var(--destructive);
  --toggle-bg-color: var(--destructive);
  @supports (color: color-mix(in lab, red, red)) {
    --toggle-bg-color: color-mix(in oklab, var(--destructive) 40%, transparent);
  }
}
.lextoggle > * {
  z-index: 1;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #0000;
  border: none;
  grid-column: 2/span 1;
  grid-row-start: 1;
  height: 100%;
  padding: 0.125rem;
  transition: opacity .2s,rotate .4s;
}
.lextoggle > :focus {
  outline-style: none;
}
.lextoggle > :nth-child(2) {
  color: #1f1f1f;
  rotate: none;
}
.lextoggle > :nth-child(3) {
  color: #1f1f1f;
  opacity: 0;
  rotate: -15deg;
}
.lextoggle:has(:checked) > :nth-child(2) {
  opacity: 0;
  rotate: 15deg;
}
.lextoggle:has(:checked) > :nth-child(3) {
  opacity: 1;
  rotate: none;
}
.lextoggle:before {
  aspect-ratio: 1;
  border-radius: 50%;
  content: "";
  height: 100%;
  background-color: currentColor;
  grid-row-start: 1;
  grid-column-start: 2;
  transition: background-color .1s,translate .2s,inset-inline-start .2s;
  position: relative;
  inset-inline-start: 0;
  translate: 0;
}
.lextoggle:focus-visible, .lextoggle:has(:focus-visible) {
  outline-offset: 2px;
  outline: 2px solid;
}
.lextoggle:checked, .lextoggle[aria-checked=true], .lextoggle:has(>input:checked) {
  background-color: var(--toggle-bg-color);
  color: var(--toggle-fg-checked-color);
  grid-template-columns: 1fr 1fr 0fr;
}
.lextoggle.outline:checked, .lextoggle.outline[aria-checked=true], .lextoggle.outline:has(>input:checked) {
  border: 1px solid currentColor;
  color: var(--toggle-fg-color);
  background-color: var(--secondary);
}
.lextoggle.outline.primary:checked, .lextoggle.outline.primary[aria-checked=true], .lextoggle.outline.primary:has(>input:checked) {
  border: 1px solid var(--primary);
  color: var(--toggle-bg-color);
}
.lextoggle.outline.secondary:checked, .lextoggle.outline.secondary[aria-checked=true], .lextoggle.outline.secondary:has(>input:checked) {
  color: var(--secondary-foreground);
  border: 1px solid var(--input);
}
:is(.lextoggle:checked, .lextoggle[aria-checked=true], .lextoggle:has(>input:checked)):before {
  background-color: currentColor;
}
.lextoggle:indeterminate {
  grid-template-columns: 0.5fr 1fr 0.5fr;
}
.lextoggle:disabled {
  border: 1px solid var(--muted-foreground);
  cursor: default;
}
.lextoggle:disabled:before {
  background-color: var(--muted-foreground);
}
.lextogglesubmenu {
  color: var(--secondary-foreground);
  margin-top: -1px;
  grid-column: span 2;
}
.lexradiogroup {
  width: 100% !important;
}
.lexradiogroup .lexradiogroupitem span {
  font-weight: unset;
}
.lexradiogroup .lexradiogroupitem button {
  width: 16px;
  height: 16px;
  min-width: 16px !important;
  min-height: 16px !important;
  background-color: var(--card);
  border: 1px solid var(--input) !important;
}
.lexradiogroup .lexradiogroupitem button span {
  width: 0.5rem;
  height: 0.5rem;
  min-width: 0.5rem;
  min-height: 0.5rem;
  border-radius: 50%;
  pointer-events: none;
  margin: auto;
  transition: background-color 0.1s ease-in;
}
.lexradiogroup .lexradiogroupitem button.checked span {
  background-color: var(--primary);
}
.lexradiogroup .lexradiogroupitem:has(button:disabled) span {
  color: var(--muted-foreground) !important;
}
.lexradiogroup.secondary .lexradiogroupitem button.checked span {
  background-color: var(--secondary);
}
.lexradiogroup.success .lexradiogroupitem button.checked span {
  background-color: var(--success);
}
.lexradiogroup.destructive .lexradiogroupitem button.checked span {
  background-color: var(--destructive);
}
.lexradiogroup.warning .lexradiogroupitem button.checked span {
  background-color: var(--warning);
}
.lexvector a {
  font-size: var(--text-sm);
}
.lexvector .vecbox {
  display: flex;
  position: relative;
  width: 100%;
  flex: 1 0 0%;
  border-radius: 0.5rem;
  border: 2px solid transparent;
  margin-right: 2px;
  background-color: var(--secondary);
  transition: 0.1s linear;
  cursor: text;
}
.lexvector .vecbox:hover {
  background-color: var(--secondary);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in srgb, var(--secondary), #000 7%);
  }
}
.lexcomponent .numberbox .drag-icon, .lexcomponent .vecbox .drag-icon {
  font-size: var(--text-sm);
  color: var(--secondary-foreground);
  z-index: 11;
  margin-right: 0.25rem;
  pointer-events: none;
}
.lexvector .vecbox:has(input:focus) {
  border: 2px solid var(--accent);
}
.lexvector .vecbox span {
  min-width: 3px;
  width: 3px;
  justify-content: center;
  background-color: #22292fbf;
  display: flex;
  font-weight: 600;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.lexvector .vecbox span.x {
  background-color: var(--destructive);
}
.lexvector .vecbox span.y {
  background-color: var(--success);
}
.lexvector .vecbox span.z {
  background-color: var(--info);
}
.lexvector .vecbox span.w {
  background-color: var(--foreground);
}
input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  margin: 0;
}
input[type=number] {
  appearance: textfield;
  -moz-appearance: textfield;
}
.lexvector .vecbox .vecinput, .numberbox .vecinput {
  margin-left: 2px;
  border: none;
  width: 100%;
}
.lexvector .vecbox .vecinput:focus, .numberbox .vecinput:focus {
  color: var(--secondary-foreground);
}
.lexcomponent .numberbox {
  border: 1px solid transparent;
  margin-right: 2px;
  transition: 0.1s linear;
}
.lexcomponent .numberbox:has(input:focus) {
  border: 1px solid var(--muted-foreground);
}
.lexcomponent .numberbox .input-box {
  padding-block: var(--pad-xs);
}
.lexcomponent .numberbox .input-box input {
  padding-block: 0;
}
.lexcomponent .numberbox span {
  position: absolute;
  pointer-events: none;
  align-self: center;
}
.lexcomponent .numberbox:has(input[type=range]) span {
  margin-top: -12px;
}
.lexinputmeasure {
  font-family: var(--global-font);
  font-size: var(--text-sm);
}
.lexinputslider {
  --track-height: 0.25rem;
  --thumb-height: 0.75rem;
  --color: var(--secondary-foreground);
  @supports (color: color-mix(in lab, red, red)) {
    --color: color-mix(in oklab,var(--secondary-foreground) 20%,transparent);
  }
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border: none !important;
  width: 100%;
  height: var(--track-height);
  outline: none;
  transition: opacity .2s;
  -moz-transition: .2s;
  -webkit-transition: .2s;
}
.lexinputslider:hover {
  opacity: 1;
}
.lexinputslider::-moz-range-track {
  height: var(--track-height);
  background: var(--color);
  border-radius: 0.5rem;
}
.lexinputslider::-webkit-slider-runnable-track {
  height: var(--track-height);
  background: var(--color);
  border-radius: 0.5rem;
}
.lexinputslider::-webkit-slider-thumb {
  appearance: none;
  -webkit-appearance: none;
  margin-top: calc(var(--thumb-height) * -0.5 + var(--track-height) * 0.5);
  width: var(--thumb-height);
  height: var(--thumb-height);
  border-radius: 50%;
  background: light-dark(var(--primary), var(--primary));
  cursor: pointer;
  box-shadow: 0px 0px 2px 1px var(--secondary);
}
:root[data-mode="light"] .lexinputslider::-webkit-slider-thumb {
  box-shadow: none;
  border: 1px solid var(--primary);
}
.lexinputslider::-moz-range-thumb {
  margin-top: calc(var(--thumb-height) * -0.5 + var(--track-height) * 0.5);
  width: var(--thumb-height);
  height: var(--thumb-height);
  border-radius: 50%;
  background: light-dark(var(--primary), var(--primary));
  cursor: pointer;
  box-shadow: 0px 0px 2px 1px var(--secondary);
}
:root[data-mode="light"] .lexinputslider::-moz-range-thumb {
  box-shadow: none;
  border: 1px solid var(--primary);
}
.lexrangeslider {
  --range-thumb-color: var(--primary-foreground);
  --range-thumb-size: 0.85rem;
  --range-progress: currentColor;
  --range-fill: 1;
  --range-thumb-padding: 0.125rem;
  --range-bg: currentColor;
  @supports (color: color-mix(in lab, red, red)) {
    --range-bg: color-mix(in oklab,currentColor 20%,#0000);
  }
  --range-dir: 1;
  --radius-selector: 0.5rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  --radius-selector-max: calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));
  border-radius: calc(var(--radius-selector) + min(var(--range-thumb-padding), var(--radius-selector-max)));
  width: 100%;
  height: var(--range-thumb-size);
  border: none;
  outline: none;
  color: var(--primary);
  background-color: #0000;
  overflow: hidden;
  padding: 0;
  cursor: pointer;
  transition: opacity .2s;
  -moz-transition: .2s;
  -webkit-transition: .2s;
  vertical-align: middle;
}
.lexrangeslider:disabled {
  cursor: default;
}
.lexrangeslider.primary {
  color: var(--primary);
  --range-thumb-color: var(--primary-foreground);
}
.lexrangeslider.secondary {
  color: var(--secondary);
  --range-thumb-color: var(--secondary-foreground);
}
.lexrangeslider.success {
  color: var(--success);
  --range-thumb-color: var(--success);
  @supports (color: color-mix(in lab, red, red)) {
    --range-thumb-color: color-mix(in oklab, var(--success) 50%, #000);
  }
}
.lexrangeslider.warning {
  color: var(--warning);
  --range-thumb-color: var(--warning);
  @supports (color: color-mix(in lab, red, red)) {
    --range-thumb-color: color-mix(in oklab, var(--warning) 50%, #000);
  }
}
.lexrangeslider.destructive {
  color: var(--destructive);
  --range-thumb-color: var(--destructive);
  @supports (color: color-mix(in lab, red, red)) {
    --range-thumb-color: color-mix(in oklab, var(--destructive) 50%, #000);
  }
}
.lexrangeslider.range {
  --range-fill: 0;
  --in-range-color: currentColor;
  @supports (color: color-mix(in lab, red, red)) {
    --in-range-color: color-mix(in oklab,currentColor 30%,#0000);
  }
  --range-bg: linear-gradient(to right,
        var(--in-range-color) 0%,
        var(--in-range-color) calc(var(--range-min-value) + var(--range-fix-min-offset) - 0.25rem),
        currentColor calc(var(--range-min-value) + var(--range-fix-min-offset)),
        currentColor calc( var(--range-max-value) - var(--range-fix-max-offset)),
        var(--in-range-color) calc( var(--range-max-value) - var(--range-fix-max-offset) + 0.25rem),
        var(--in-range-color) 100%
    );
  background: var(--range-bg);
}
.lexrangeslider.no-fill {
  --range-fill: 0;
}
.lexrangeslider.left {
  --range-dir: -1;
}
.lexrangeslider.overlap {
  --range-bg: transparent;
}
.lexrangeslider:hover {
  filter: brightness(1.1);
}
.lexrangeslider::-moz-range-track {
  background-color: var(--range-bg);
  border-radius: var(--radius-selector);
  width: 100%;
  height: calc(var(--range-thumb-size)*0.5);
}
.lexrangeslider::-webkit-slider-runnable-track {
  background-color: var(--range-bg);
  border-radius: var(--radius-selector);
  width: 100%;
  height: calc(var(--range-thumb-size)*0.5);
}
.lexrangeslider:disabled::-webkit-slider-runnable-track {
  color: var(--muted);
}
.lexrangeslider::-webkit-slider-thumb {
  box-sizing: border-box;
  border-radius: calc(var(--radius-selector) + min(var(--range-thumb-padding), var(--radius-selector-max)));
  height: var(--range-thumb-size);
  width: var(--range-thumb-size);
  border: var(--range-thumb-padding) solid;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: var(--range-progress);
  box-shadow: 0 -1px oklch(0% 0 0/0.1) inset,0 8px 0 -4px oklch(100% 0 0/0.1) inset,0 1px currentColor,0 0 0 2rem var(--range-thumb-color) inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2)) 0 0 calc(100rem*var(--range-fill));
  @supports (color: color-mix(in lab, red, red)) {
    box-shadow: 0 -1px oklch(0% 0 0/0.1) inset,0 8px 0 -4px oklch(100% 0 0/0.1) inset,0 1px color-mix(in oklab,currentColor calc(1*10%),#0000),0 0 0 2rem var(--range-thumb-color) inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2)) 0 0 calc(100rem*var(--range-fill));
  }
  background-color: currentColor;
  position: relative;
  top: 50%;
  pointer-events: all !important;
  transform: translateY(-50%);
}
.lexrangeslider::-moz-range-thumb {
  box-sizing: border-box;
  border-radius: calc(var(--radius-selector) + min(var(--range-thumb-padding), var(--radius-selector-max)));
  height: var(--range-thumb-size);
  width: var(--range-thumb-size);
  border: var(--range-thumb-padding) solid;
  color: var(--range-progress);
  box-shadow: 0 -1px oklch(0% 0 0/0.1) inset,0 8px 0 -4px oklch(100% 0 0/0.1) inset,0 1px currentColor,0 0 0 2rem var(--range-thumb-color) inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2)) 0 0 calc(100rem*var(--range-fill));
  @supports (color: color-mix(in lab, red, red)) {
    box-shadow: 0 -1px oklch(0% 0 0/0.1) inset,0 8px 0 -4px oklch(100% 0 0/0.1) inset,0 1px color-mix(in oklab,currentColor calc(1*10%),#0000),0 0 0 2rem var(--range-thumb-color) inset,calc((var(--range-dir,1)*-100rem) - (var(--range-dir,1)*var(--range-thumb-size)/2)) 0 0 calc(100rem*var(--range-fill));
  }
  background-color: currentColor;
  position: relative;
  top: 50%;
  pointer-events: all !important;
}
.lexotpslot.active {
  border: 1px solid var(--muted-foreground);
  transition: border-color 0.1s ease-in;
}
.lexotpslot.disabled {
  color: var(--muted-foreground);
  cursor: default;
}
.lexcomponent .lexpad {
  place-items: center;
}
.lexcomponent .lexpad .lexinnerpad {
  border-radius: 0.5rem;
  background-color: light-dark(var(--secondary), var(--card));
}
.lexcomponent .lexpad .lexinnerpad .lexpadthumb {
  background-color: var(--primary);
  width: 10%;
  height: 10%;
  border-radius: 0.25rem;
  transform: translate(0px, 0px);
}
.lexcomponent .lexpad .lexinnerpad .lexpadthumb.active {
  background-color: var(--primary);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--primary) 80%, transparent);
  }
}
.lextabscontainer {
  width: 100%;
  height: 100%;
  display: flex;
}
.lextabscontainer.horizontal {
  display: table;
}
.lextabscontainer .tabs {
  padding: 4px;
  background: none !important;
  border-right: 1px solid var(--input);
  justify-items: center;
  min-width: 32px;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.lextabscontainer.horizontal .tabs {
  border-right: none;
  border-bottom: 1px solid var(--input);
  flex-direction: row;
}
.lextabscontainer .components {
  width: 100%;
  padding: 4px;
}
.lextabscontainer .tabs .lextab {
  padding: 4px;
  border-radius: 4px;
  color: var(--foreground);
  cursor: pointer;
  text-align: center;
}
.lextree {
  & .lexnodetreefilter {
    background: none !important;
  }
}
.lextree .lexnodetreefilter:hover {
  background: none;
}
.lextree .lextreetools {
  & input {
    font-size: var(--text-sm);
    padding-left: 8px;
  }
  & input:hover {
    background: none;
  }
  &.notitle {
    border-top-left-radius: 0.5rem;
    border-top-right-radius: 0.5rem;
  }
}
.lextree .lextreeitem {
  list-style-type: none;
  transition-property: color, background-color, border-color;
  transition-timing-function: ease-out;
  transition-duration: .15s;
}
.lextree .lextreeitem input {
  padding: 0;
  border: none;
  background: none;
  &:hover {
    background: none;
  }
}
.lextree .lextreeitem img {
  width: 16px;
  height: 16px;
  margin-right: 0.5rem;
  vertical-align: middle;
}
.lextree .lextreeitem.draggingover {
  background: var(--muted);
  color: var(--muted-foreground);
}
.lextree .lextreeitem:hover {
  background: var(--secondary);
  color: var(--secondary-foreground);
}
.lextree .lextreeitem.selected {
  color: #f4f4f5;
  background: var(--accent);
}
.lextree .lextreeitem.selected a.lexicon {
  color: #f4f4f5;
}
.lextree .lextreeitem a.hierarchy {
  margin-right: 6px;
}
.lexfileinput::file-selector-button {
  align-content: center;
  background-color: var(--card);
  border-radius: 0.5rem;
  border: none;
  min-height: 22px !important;
  color: var(--foreground);
  font-weight: 500;
  outline: none;
  white-space: nowrap;
  padding-inline: 0.5rem;
  overflow: hidden;
  cursor: pointer;
  transition: 0.1s linear;
}
.lexfileinput::file-selector-button:hover {
  background-color: var(--card);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in srgb, var(--card) 30%, transparent);
  }
}
.lexfileinput:disabled::file-selector-button {
  cursor: default;
  color: var(--muted-foreground);
}
.lexprogressbar {
  border: none !important;
  width: 95%;
  opacity: 0.7;
  -webkit-transition: .2s;
  transition: opacity .2s;
  margin-top: 2px;
  flex: 1 1 auto;
  &.editable:hover {
    cursor: pointer;
  }
}
.lexprogressbar::-webkit-meter-bar {
  border-radius: 0.25rem;
  height: 12px;
  background: var(--muted-foreground);
  @supports (color: color-mix(in lab, red, red)) {
    background: color-mix(in srgb, var(--muted-foreground) 30%, transparent);
  }
}
meter:-moz-meter-optimum::-moz-meter-bar {
  background: var(--color-blue-500);
}
.lexprogressbar::-webkit-meter-optimum-value {
  background: var(--color-blue-500);
}
meter:-moz-meter-sub-optimum::-moz-meter-bar {
  background: var(--warning);
}
.lexprogressbar::-webkit-meter-suboptimum-value {
  background: var(--warning);
}
meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
  background: var(--destructive);
}
.lexprogressbar::-webkit-meter-even-less-good-value {
  background: var(--destructive);
}
.lexbadge {
  outline: none;
  border: 1px solid transparent;
}
.lexbadge.primary {
  background-color: var(--primary);
  color: var(--primary-foreground);
}
.lexbadge.secondary {
  background-color: var(--secondary);
  color: var(--secondary-foreground);
}
.lexbadge.success {
  background-color: var(--success);
  color: #013101;
}
.lexbadge.warning {
  background-color: var(--warning);
  color: #793205;
}
.lexbadge.destructive {
  background-color: var(--destructive);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--destructive) 60%, transparent);
  }
  color: white;
}
:root[data-mode="light"] .lexbadge.destructive {
  background-color: var(--destructive);
}
.lexbadge.outline {
  color: var(--secondary-foreground);
  border-color: var(--border);
  background-color: var(--input);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--input) 30%, transparent);
  }
}
.lexbadge.xs {
  min-width: 1.25rem;
  min-height: 1.25rem;
  font-size: var(--text-xs);
}
.lexbadge.sm {
  min-width: 1.4rem;
  min-height: 1.4rem;
  font-size: var(--text-sm);
}
.lexbadge.lg {
  min-width: 1.75rem;
  min-height: 1.75rem;
  font-size: var(--text-lg);
}
.lexbadge.xl {
  min-width: 1.9rem;
  min-height: 1.9rem;
  font-size: var(--text-xl);
}
.lexbadge-parent {
  position: relative;
}
.lexbadge-parent .lexbadge {
  position: absolute;
  top: 0;
  right: -0.25rem;
  border: none !important;
}
.lexmenubar {
  padding-inline: var(--pad-sm);
}
.lexmenubar .lexmenuentry {
  min-height: 48px;
  height: 100%;
  display: flex;
  justify-content: center;
  font-size: var(--text-sm);
  align-items: center;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.lexmenubar .lexmenuentry span {
  padding: 0.25rem 0.75rem;
  border-radius: 0.5rem;
}
.lexmenubar .lexmenuentry:hover span, .lexmenubar .lexmenuentry.selected span {
  color: var(--foreground);
  background-color: var(--secondary);
}
.lexmenubar .lexmenuentry:active {
  color: #b7b7cba4;
  margin-top: 0.05em;
}
.lexmenubar .lexmenubuttons {
  display: inline-flex;
  background-color: var(--secondary);
  height: 75%;
  margin: auto;
  border-radius: 6px;
  padding-inline: 4px;
  font-size: var(--text-base);
}
.lexmenubar .lexmenubuttons.left {
  margin-left: unset;
}
.lexmenubar .lexmenubuttons.right {
  margin-left: unset;
  margin-right: 12px;
}
.lexmenubuttons .lexbutton {
  padding-inline: 0.2rem;
  min-width: 0rem;
}
.lexmenubuttons .lexbutton:hover, :root[data-mode="light"] .lexmenubuttons .lexbutton:hover {
  background-color: transparent !important;
}
.lexmenubuttons .lexbutton:active, :root[data-mode="light"] .lexmenubuttons .lexbutton:active {
  background-color: transparent !important;
}
.lexmenubar .lexmenubutton {
  color: var(--secondary-foreground);
  padding-inline: 0.45em;
  cursor: pointer;
  place-content: center;
  justify-items: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  &.main:first-child {
    margin-left: 8px;
  }
  &.main:last-child {
    margin-right: 8px;
  }
  & a {
    margin-left: 0px !important;
  }
  &.main a {
    font-size: var(--text-2xl);
  }
  &.disabled a {
    color: var(--muted-foreground);
    cursor: default;
  }
}
.lexcontextmenu {
  z-index: 102;
  position: fixed;
  border-radius: 6px;
  box-shadow: 0 0 6px rgba(46, 46, 46, 0.2) !important;
  background-color: var(--background-blur);
  border: 1px solid #91909036;
}
.lexcontextmenu:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  z-index: -1;
  border-radius: 6px;
}
.lexcontextmenu .lexmenuboxentry {
  width: 100%;
  color: var(--secondary-foreground);
  padding: 4px;
  padding-inline: 8px;
  display: flex;
  gap: 0.5rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.lexcontextmenu .lexmenuboxentry:first-child {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.lexcontextmenu .lexmenuboxentry:last-child {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}
.lexcontextmenu .lexmenuboxentry.cmtitle {
  background: light-dark(var(--secondary), var(--background));
  font-weight: 600;
  cursor: default;
}
.lexcontextmenu .lexmenuboxentry.cmseparator {
  border-bottom: 1px solid var(--border);
  padding-bottom: 0;
  padding-top: 0;
}
.lexcontextmenu .lexmenuboxentry .lexentryname {
  margin-right: 1rem;
  font-size: var(--text-sm);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.lexcontextmenu .lexmenuboxentry .lexentryname.disabled {
  color: light-dark(#808080b0, #c0c4cb53);
}
.lexcontextmenu .lexmenuboxentry a {
  align-content: center;
  margin-left: auto;
  font-size: var(--text-xs);
}
.lexcontextmenu .lexmenuboxentry:hover:not(.cmtitle) {
  background-color: var(--accent);
  color: var(--accent-foreground);
}
.lexcontextmenu .lexmenuboxentry:active:not(.cmtitle, .cmseparator) {
  padding-top: 0.22em;
  color: #b7b7cba4;
}
.lexcontextmenu .lexseparator {
  margin: 3px 0 3px 10px;
}
.lexcontextmenu .lexentryshort {
  font-size: var(--text-xs);
  float: right;
  font-weight: bold;
  color: #979aa0e3;
}
.lexsidebar *::-webkit-scrollbar {
  display: none;
}
.lexsidebar .lexcomponent {
  width: 100% !important;
  padding: 0 !important;
}
.lexsidebar .lexsidebargroup:nth-child(n+2) {
  margin-top: 0.15rem;
}
.lexsidebar .lexsidebarseparator {
  background-color: var(--muted);
  width: calc(100% + 20px);
  height: 1px;
  margin: 0 auto;
  margin-top: 0.4rem;
  margin-bottom: 0.4rem;
  display: flex;
  flex-shrink: 0;
}
.lexsidebar .lexsidebarfilter {
  transform: translate(0, 0);
  opacity: 1;
  margin-bottom: 0.5rem;
  transition: all 0.2s cubic-bezier(0,0,.2,1);
}
.lexsidebar .lexsidebargrouptitle {
  font-size: var(--text-xs);
  font-weight: 500;
  color: var(--muted-foreground);
  overflow: hidden;
  display: flex;
}
.lexsidebar .lexsidebargrouptitle div {
  transform: translate(0, 0);
  opacity: 1;
  transition: transform 0.3s cubic-bezier(0,0,.2,1), opacity 0.1s cubic-bezier(0,0,.2,1), max-height 0.3s cubic-bezier(0,0,.2,1);
  height: 32px;
  max-height: 32px;
  align-content: center;
}
.lexsidebar .lexsidebargrouptitle a {
  margin: auto 0;
  margin-left: auto;
  margin-right: 8px;
  transition: transform 0.3s cubic-bezier(0,0,.2,1), opacity 0.1s cubic-bezier(0,0,.2,1), max-height 0.3s cubic-bezier(0,0,.2,1);
}
.lexsidebar.collapsing .lexsidebargrouptitle *, .lexsidebar.collapsing .lexsidebarfilter {
  max-height: 0px;
  transform: translate(0, -24px);
  opacity: 0;
  margin-block: 0;
}
.lexsidebar.collapsed .lexsidebargrouptitle * {
  display: none;
}
.lexsidebar .lexsidebarentry {
  padding-inline: var(--pad-md);
  padding-block: var(--pad-sm);
  margin-block: 0.15rem;
}
.lexsidebar .lexsidebarentry span {
  font-size: var(--text-sm);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  align-self: center;
  place-content: start;
}
.lexsidebar .lexsidebarentry:hover {
  background-color: var(--secondary);
  color: var(--secondary-foreground);
}
.lexsidebar .lexsidebarentry.selected {
  background-color: var(--accent);
  color: var(--accent-foreground);
}
.lexsidebar .lexsidebarentry:active {
  transform: scale(0.99);
}
.lexsidebar .lexsidebarentry .lexsidebarentrycontent {
  font-weight: 500;
  display: flex;
  gap: 0.8em;
  margin: 0;
  height: 22px;
  opacity: 0.95;
}
.lexsidebar .lexsidebarentry .lexsidebarentrycontent i {
  min-width: 22px;
  max-width: 22px;
  margin: auto 0;
  text-align: center;
  font-size: var(--text-lg);
}
.lexsidebar .lexsidebarentry .lexsidebarentrycontent a:not(.lexicon) {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  align-content: center;
}
.lexsidebar .lexsidebarentry .lexsidebarentryicon {
  margin-left: 2px;
}
.lexsidebar .lexsidebarentry a.lexicon:not(.lexsidebarentryicon) {
  margin-left: auto;
}
.lexsidebar .lexsidebarentry > * {
  font-size: var(--text-sm);
}
.lexsidebar .lexcheckbox {
  width: 1.25em;
  height: 1.25em;
}
.lexsidebar .lexsidebarsubentrycontainer {
  margin-block-start: 4px;
  margin-block-end: 8px;
  opacity: 0.95;
  border-left: 1px solid var(--input);
}
.lexsidebar .collapsablecontainer {
  transition: transform 0.3s cubic-bezier(0,0,.2,1), opacity 0.1s cubic-bezier(0,0,.2,1), max-height 0.3s cubic-bezier(0,0,.2,1);
  padding-inline: 4px;
}
.lexsidebar .lexsidebarsubentrycontainer:not(:has(div)) {
  margin: 0px;
}
.lexsidebar.collapsing .collapsablecontainer {
  max-height: 0px;
  transform: translate(-8px, -8px);
  opacity: 0;
  margin: 0;
}
.lexsidebar .lexsidebarsubentrycontainer .lexsidebarentry {
  display: flex;
  gap: 0.8em;
}
.lexsidebar.collapsed .collapsablecontainer {
  display: none !important;
}
.lexsidebar.collapsed .lexsidebarentrycontent div, .lexsidebar.collapsed .lexsidebarcontent div a:not(.lexsidebarentryicon) {
  display: none;
}
.lexsidebar.collapsed .lexsidebarentry:hover {
  display: flex;
}
.lexsidebar .lexsidebarfooter, .lexsidebar .lexsidebarheader {
  transition: background-color 0.3s ease-out;
}
.lexsidebar .lexsidebarfooter:hover, .lexsidebar .lexsidebarheader:hover {
  background-color: var(--secondary);
}
.lexsidebar.collapsing .lexsidebarheader {
  background-color: var(--accent);
}
.lexsidebar .lexsidebarfooter:active, .lexsidebar .lexsidebarheader:active {
  transform: scale(0.99);
}
.lexsidebar:not(.collapsing) .lexavatar:has(svg) {
  border: 1px solid #ffffff18;
}
.lexsidebar .lexsidebarfooter div, .lexsidebar .lexsidebarheader div {
  transition: width 0.3s cubic-bezier(0,0,.2,1), padding-inline 0.3s cubic-bezier(0,0,.2,1);
}
.lexsidebar .lexsidebarfooter div.infodefault, .lexsidebar .lexsidebarheader div.infodefault {
  width: 100%;
  padding-inline: 12px;
  justify-content: center;
  display: flex;
  flex-direction: column;
}
.lexsidebar .lexsidebarfooter div span, .lexsidebar .lexsidebarheader div span {
  transition: width 0.3s cubic-bezier(0,0,.2,1);
}
.lexsidebar .lexsidebarfooter a, .lexsidebar .lexsidebarheader a {
  width: 32px;
  margin-left: 0px;
  align-content: center;
}
.lexsidebar .lexsidebarheader a.toggler {
  margin-left: auto;
}
.lexsidebar .lexsidebarfooter svg, .lexsidebar .lexsidebarheader svg {
  place-self: center;
}
.lexsidebar.collapsing .lexsidebarfooter span, .lexsidebar.collapsing .lexsidebarfooter div, .lexsidebar.collapsing .lexsidebarheader span, .lexsidebar.collapsing .lexsidebarheader div {
  width: 0px;
  padding-inline: 0px;
}
.lexsidebar.collapsed .lexsidebarfooter span, .lexsidebar.collapsed .lexsidebarfooter div, .lexsidebar.collapsed .lexsidebarheader span, .lexsidebar.collapsed .lexsidebarheader div {
  display: none;
}
.lexoverlaybuttons {
  width: auto !important;
  height: auto !important;
  z-index: 95;
}
.lexoverlaybuttons .lexcomponent {
  padding: 0px;
  pointer-events: auto;
  min-width: 32px;
}
.lexoverlaybuttons .lexcomponent button {
  min-width: 32px;
}
.lexoverlaybuttonscontainer.vertical {
  display: grid;
  justify-items: left;
}
.lexoverlaybuttonscontainer.vertical .lexoverlaybuttons {
  display: grid;
}
.lexoverlaybuttonscontainer.vertical .lexcomponent {
  margin-bottom: 6px;
  margin-right: 0px;
}
.lexoverlaybuttonscontainer.vertical .lexcomponent button {
  min-width: 32px;
  max-height: 32px !important;
}
.lexoverlaybuttonscontainer.bottom {
  top: unset;
  bottom: 0;
}
.lexoverlaybuttonscontainer.center {
  justify-content: center;
}
.lexoverlaybuttonscontainer.right {
  justify-content: right;
}
.lexoverlaybuttonscontainer.vertical.center {
  justify-items: center;
}
.lexoverlaybuttonscontainer.vertical.right {
  justify-items: right;
}
.lexoverlaybuttons .lexbutton.selected {
  --radius: 0.85rem;
  --button-color: var(--primary) !important;
  color: var(--primary-foreground) !important;
}
.lexoverlaybuttons .lexbutton.selected:hover {
  --button-color: var(--primary) !important;
  @supports (color: color-mix(in lab, red, red)) {
    --button-color: color-mix(in oklab, var(--primary) 80%, transparent) !important;
  }
}
.lexoverlaybuttonscontainer.vertical .lexoverlaygroup {
  display: grid;
  margin-right: 0px;
  margin-bottom: 6px;
}
.lexoverlaybuttons .lexoverlaygroup .lexcomponent {
  padding: 0px;
  margin-right: 0px;
}
.lexoverlaybuttonscontainer.vertical .lexoverlaygroup .lexcomponent {
  margin-right: 0px;
  margin-bottom: 0px;
}
.lexoverlaybuttonscontainer.vertical .lexoverlaygroup .lexcomponent button {
  width: 100% !important;
}
.lexoverlaybuttons .lexcomponent:last-child {
  margin-right: 0px;
}
.lexoverlayseparator {
  background-color: var(--border);
  opacity: 0.9;
  width: 1px;
  height: calc(100% + 0.5em);
  margin-top: -0.25em;
}
.lexoverlaybuttonscontainer.vertical .lexoverlayseparator {
  width: calc(100% + 0.5em);
  height: 1px;
  margin-left: -0.25em;
}
.lexareatabs .lexareatab {
  font-size: var(--text-sm);
  font-weight: 600;
  justify-content: center;
  text-align: center;
  align-items: center;
  padding: 3px;
  color: var(--foreground);
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  line-height: 16px;
}
.lexareatabs .lexareatab.thumb {
  background: var(--primary);
  z-index: 0;
  height: 22px;
  position: absolute;
  transition: linear transform 0.15s;
}
.lexareatabs.row {
  background-color: var(--secondary);
  border: 1px solid var(--border);
  border-radius: 0.75rem;
  padding: 0.2rem;
  gap: 0.125em;
}
.lexareatabs.row .lexareatab {
  padding: var(--pad-lg) 1.25em;
  transition: 0.1s;
  background: none;
  border-radius: 0.5rem;
}
.lexareatabs.fit {
  width: 100%;
  padding-inline: 6px;
}
.lexareatabs.fit .lexareatab {
  flex: 100%;
  border-radius: 10px;
  z-index: 1;
}
.lexareatabs .lexareatab:active {
  color: #b7b7cba4;
}
.lexareatabs.fit .lexareatab.selected {
  color: var(--primary-foreground);
}
.lexareatabs.row .lexareatab.selected {
  background-color: var(--card);
  outline: none;
  color: var(--card-foreground);
}
.lexareatabs.folding .lexareatab.selected {
  color: var(--primary-foreground);
  background-color: #555556;
}
.lexareatabs .lexareatab:hover {
  color: var(--foreground);
}
.lexareatabscontainer {
  transition: height 0.1s;
  transition-timing-function: ease-out;
}
.lexareatabscontainer:not(.lexcodeeditor) > .lexarea.origin {
  padding-block: 0.25rem;
}
.lexareatabscontent.folded {
  max-height: 0px;
}
.lexcard.selectable:hover {
  border-color: var(--accent);
}
.lexlayers {
  grid-template-columns: repeat(auto-fit, minmax(18px, 1fr));
  grid-gap: 6px 8px;
  max-width: calc(26px * 8);
}
.lexlayer {
  --layer-color: var(--secondary);
  background-color: var(--layer-color);
  transition: background-color 0.15s linear;
  &.selected {
    --layer-color: var(--primary);
    color: var(--primary-foreground);
  }
  &:hover {
    background-color: var(--layer-color);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in srgb, var(--layer-color), #000 7%);
    }
  }
  &:active {
    background-color: var(--layer-color);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in srgb, var(--layer-color), #ffffff 4%);
    }
    transform: scale(0.99);
  }
}
.lexlistitem {
  width: 100%;
  height: 24px;
  cursor: pointer;
  color: var(--secondary-foreground);
  font-size: var(--text-sm);
  border-radius: 0.5rem;
  padding-inline: 0.5rem;
  padding-block: 0.25rem;
  line-height: 22px;
  align-content: center;
  align-items: center;
  display: flex;
  flex-direction: row;
  white-space: nowrap;
  gap: 0.25rem;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  transition: background-color 0.15s linear;
}
.lexlistitem a {
  float: left;
  line-height: 20px;
  margin-right: 4px;
}
.lexlistitem:hover {
  background-color: var(--secondary);
}
.lexlistitem:active {
  color: rgba(216, 218, 230, 0.826);
}
.lexlistitem.selected {
  color: var(--primary-foreground);
  background-color: var(--primary);
}
.lexcomponent:has(.lexarrayitems), .lexcomponent:has(.lexcheckboxsubmenu), .lexcomponent:has(.lextogglesubmenu), .lexcomponent:has(.lexcustomcontainer) {
  border-radius: 6px;
  transition: background-color 0.2s ease-out;
  display: flex;
  flex-wrap: wrap;
}
.lexcomponent:has(.lexarrayitems)[data-opened=true], .lexcomponent:has(.lexcheckboxsubmenu)[data-opened=true], .lexcomponent:has(.lextogglesubmenu)[data-opened=true], .lexcomponent:has(.lexcustomcontainer)[data-opened=true] {
  background-color: light-dark(var(--accent), var(--card));
  padding: var(--pad-lg);
  border-radius: 0.5rem;
}
.lexarrayitems {
  width: 100%;
  padding: 2px;
  color: var(--secondary-foreground);
  font-size: var(--text-sm);
  margin-top: -1px;
  grid-column: span 2;
}
.lexarrayitems .lexcomponentname {
  color: var(--muted-foreground);
  font-size: var(--text-sm);
  justify-content: center;
  margin-right: 0.4rem;
  font-weight: 600;
}
.lextag {
  display: inherit;
  cursor: default;
}
.lextag a:hover {
  color: light-dark(var(--muted-foreground), var(--secondary-foreground));
  cursor: pointer;
}
.lextable {
  overflow-x: scroll;
}
.lextable table {
  width: 100%;
  border: 1px solid;
  border-color: var(--secondary);
  border-collapse: separate;
  border-radius: 8px;
  border-spacing: 0px;
  overflow: hidden;
  background-color: var(--background);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  color: var(--foreground);
}
.lextable svg {
  color: var(--foreground);
}
.lextable svg.success, .lextable svg.success path {
  color: #42d065 !important;
}
.lextable thead {
  display: table-header-group;
  border-color: inherit;
  border-collapse: separate;
}
.lextable tr {
  display: table-row;
  vertical-align: inherit;
  border-color: inherit;
  transition: transform 0.2s ease-in;
}
.lextable tr:has(input:checked) {
  background-color: var(--secondary);
}
.lextable tr:hover, .lextable tr.dragging {
  background-color: var(--secondary);
}
.lextable tr.dragging {
  transition: none !important;
  pointer-events: none;
}
.lextable th, .lextable td {
  padding-block: var(--pad-md);
  padding-inline: 12px;
  text-align: left;
  align-content: center;
}
.lextable td.empty-row {
  text-align: center;
  padding-block: 16px;
}
.lextable th {
  --th-color: var(--secondary-foreground);
  font-weight: 600;
  color: var(--th-color);
  font-size: var(--text-sm);
  padding-block: var(--pad-sm);
  cursor: pointer;
  transition: all 0.1s linear;
  white-space: nowrap;
  background-color: var(--card);
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.lextable th a {
  pointer-events: none;
}
.lextable th span {
  border-radius: 6px;
  padding: 0.4rem;
}
.lextable th span:hover {
  background-color: var(--secondary);
}
.lextable th a, .lextable td a {
  font-size: var(--text-xs) !important;
  display: flex;
  margin-left: 0px !important;
  place-self: center;
}
.lextable th a:active {
  transform: scale(1.01);
}
.lextable th:hover {
  color: var(--th-color);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in srgb, var(--th-color), #000 10%);
  }
}
.lextable th.centered, .lextable td.centered {
  text-align: center;
}
.lextable.centered th, .lextable.centered td {
  text-align: center;
}
.lextable th.sm, .lextable td.sm {
  width: 8%;
}
.lextable th .lexcheckbox, .lextable td .lexcheckbox {
  width: 1.25em;
  height: 1.25em;
}
.lextable th a {
  display: inline-block;
  transform: translate(6px, 3px);
}
.lextable td {
  justify-items: center;
  border-top: 2px solid;
  overflow: hidden;
  white-space: nowrap;
  border-color: var(--border);
}
.lextable thead:first-child tr:first-child th:first-child, .lextable tbody:first-child tr:first-child td:first-child {
  border-radius: 8px 0 0 0;
}
.lextable thead:last-child tr:last-child th:first-child, .lextable tbody:last-child tr:last-child td:first-child {
  border-radius: 0 0 0 8px;
}
.lextable .lextablebuttons {
  display: inline-flex;
  gap: 0.2rem;
}
.lextable .lextablebuttons .lexicon {
  font-size: var(--text-sm) !important;
  padding: 0.2rem;
}
:root[data-mode="light"] .lextable table {
  box-shadow: none;
}
.lexcustomitems {
  width: 100%;
  padding: 6px;
  color: var(--secondary-foreground);
  font-size: var(--text-sm);
  margin-top: -1px;
  grid-column: span 2;
}
.lexcustomcontainer button.custom {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
.lexknob {
  padding: 8px;
}
.lexknob .knobcircle {
  --knob-snap-mark: 45deg;
  --circle-marker-bg: var(--muted-foreground);
  background: rgb(62, 62, 62);
  background: linear-gradient(180deg, rgba(82, 82, 82, 1) 0%, rgba(40, 40, 40, 1) 100%);
  width: 64px;
  height: 64px;
  margin: 0 auto;
  border-radius: 50%;
  position: relative;
  box-shadow: 0px 3px 9px 2px #121212a9;
}
.lexknob .knobcircle::before {
  content: "";
  position: absolute;
  width: 125%;
  height: 125%;
  top: -12.5%;
  left: -12.5%;
  border-radius: 50%;
  border: 2px solid var(--circle-marker-bg);
  border-bottom-color: transparent;
}
.lexknob.show-ticks .knobcircle::after {
  content: "";
  position: absolute;
  width: 130%;
  height: 130%;
  top: -15.5%;
  left: -15.5%;
  border-radius: 50%;
  pointer-events: none;
  mask-image: radial-gradient(circle, transparent 60%, black 60%), conic-gradient(transparent -135deg, black -135deg 275deg, transparent 275deg);
  -webkit-mask-composite: intersect;
  mask-composite: intersect;
  background: repeating-conic-gradient(transparent 0deg, var(--circle-marker-bg) 1deg 3deg, transparent 4deg calc(var(--knob-snap-mark) - 1deg));
  transform: rotate(-135deg);
}
.lexknob.sm .knobcircle {
  width: 48px;
  height: 48px;
}
.lexknob.bg .knobcircle {
  width: 81px;
  height: 81px;
}
.lexknob .innerknobcircle {
  background-color: rgba(62, 62, 62, 1);
  width: 56px;
  height: 56px;
  border-radius: 50%;
  margin: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  cursor: ns-resize;
}
.lexknob.disabled .innerknobcircle {
  cursor: default;
}
.lexknob.sm .innerknobcircle {
  width: 39px;
  height: 39px;
}
.lexknob.bg .innerknobcircle {
  width: 73px;
  height: 73px;
}
.lexknob .knobmarker {
  background-color: var(--primary);
  filter: brightness(1.5);
  width: 6px;
  height: 6px;
  border-radius: 50%;
  margin: 0 auto;
  margin-top: 6px;
}
.lexknob.disabled .knobmarker {
  background-color: var(--muted-foreground);
}
.lexknob.sm .knobmarker {
  width: 5px;
  height: 5px;
}
.lexknob.bg .knobmarker {
  width: 7px;
  height: 7px;
  margin-top: 8px;
}
:root[data-mode="light"] .lexknob .knobcircle {
  background: rgb(182, 182, 182);
  background: linear-gradient(180deg, rgba(200, 200, 200, 1) 0%, rgba(160, 160, 160, 1) 100%);
  box-shadow: 0px 0px 8px 2px #a3a3a379;
}
:root[data-mode="light"] .lexknob .innerknobcircle {
  background-color: rgb(182, 182, 182);
}
.swap {
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  place-self: center;
  display: inline-grid;
  position: relative;
  pointer-events: none;
}
.lexsidebarentrycontent.swap {
  place-self: start;
  & input {
    position: absolute;
  }
  & .swap-on {
    position: absolute;
  }
}
.swap input {
  pointer-events: auto;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  width: 100%;
  height: 100%;
  background: none !important;
}
.swap > * {
  grid-row-start: 1;
  grid-column-start: 1;
  transition-property: transform,rotate,opacity;
  transition-duration: .2s;
  transition-timing-function: cubic-bezier(0,0,.2,1);
}
.swap .swap-on,.swap .swap-indeterminate,.swap input:indeterminate~.swap-on,.swap input:is(:checked,:indeterminate)~.swap-off {
  opacity: 0;
}
.swap input:checked~.swap-on,.swap input:indeterminate~.swap-indeterminate {
  opacity: 1;
}
.swap .swap-on,.swap .swap-indeterminate, .swap input:indeterminate~.swap-on {
  rotate: 45deg;
}
.swap input:is(:checked,:indeterminate)~.swap-on, .swap.swap-active .swap-on {
  rotate: none;
}
.swap input:is(:checked,:indeterminate)~.swap-off, .swap.swap-active .swap-off {
  rotate: -45deg;
}
.lextimeline {
  flex-direction: column;
  color: var(--primary-foreground);
  background-color: var(--global-primary-color);
  height: 100%;
}
.lextimeline *::-webkit-scrollbar {
  display: none;
}
.lextimeline .lexbuttonscontainer {
  position: absolute;
  padding: 0 10px;
}
.lextimeline .lexcomponent:has(.lexbutton:not(.array)) {
  padding: 1px;
}
.lextimeline .lexinlinecomponents {
  padding-right: 10px;
}
.lextimeline .lextree {
  margin: 0px !important;
}
.lextimeline .lextree .lextreeitem {
  margin: 0px;
}
.lextimeline .lextree ul {
  margin: 0;
  padding-bottom: 0px;
  padding-top: 0px;
  font-size: var(--text-sm);
}
.lextimeline .lexsplitbar.vertical {
  position: unset;
  width: unset;
  height: unset;
}
.lexarea .minimize-vertical, .lexarea .maximize-vertical {
  transition: height 0.1s ease-out;
}
.lexarea .minimize-horizontal, .lexarea .maximize-horizontal {
  transition: width 0.1s ease-out;
}
.lexarea .fadein-vertical {
  animation-name: fadein;
  animation-duration: 0.1s;
  animation-fill-mode: forwards;
}
.lexarea .fadeout-vertical {
  animation-name: fadeout;
  animation-duration: 0.1s;
  animation-fill-mode: forwards;
}
.lexarea .fadein-horizontal {
  animation-name: fadein;
  animation-duration: 0.1s;
  animation-fill-mode: forwards;
}
.lexarea .fadeout-horizontal {
  animation-name: fadeout;
  animation-duration: 0.1s;
  animation-fill-mode: forwards;
}
@keyframes fadein {
  from {
    opacity: 0%;
  }
  25% {
    opacity: 75%;
  }
  to {
    opacity: 100%;
  }
}
@keyframes fadeout {
  from {
    opacity: 100%;
  }
  25% {
    opacity: 25%;
  }
  to {
    opacity: 0%;
  }
}
.overlay-top {
  position: absolute;
  top: 0;
}
.overlay-bottom {
  position: absolute;
  bottom: 0;
}
.overlay-left {
  position: absolute;
  left: 0;
  top: 0;
}
.overlay-right {
  position: absolute;
  right: 0;
  top: 0;
}
.lexarea.overlay-bottom, .lexarea.overlay-top, .lexarea.overlay-left, .lexarea.overlay-right, .overlay-bottom .lexarea, .overlay-top .lexarea, .overlay-left .lexarea, .overlay-right .lexarea, .overlay-bottom .lextimeline, .overlay-top .lextimeline, .overlay-left .lextimeline, .overlay-right .lextimeline, .overlay-bottom .lextimelinearea, .overlay-top .lextimelinearea, .overlay-left .lextimeline, .overlay-right .lextimelinearea {
  background-color: var(--background);
}
.lexassetbrowser {
  min-height: 190px;
  height: 100%;
  border-radius: 6px;
  background-color: var(--background);
}
.lexassetbrowser .lexarea {
  background: none;
}
.lexassetbrowser .lexsplitbar.horizontal {
  position: relative;
  height: 100%;
  border-radius: 0px;
  left: 0 !important;
  top: 0;
}
.lexassetbrowser .lexsplitbar.vertical {
  position: unset;
  width: unset;
  height: unset;
}
.lexassetscontent.dragging {
  background-color: var(--background);
}
ul.lexassetscontent {
  height: 100%;
  -webkit-text-size-adjust: 100%;
  padding: 0 1em;
  margin: 0;
  font-size: var(--text-sm);
  color: #AAA;
  position: relative;
  overflow: auto;
}
.lexassetscontent.compact {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  column-gap: 0.5rem;
}
.lexassetscontent.list {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.lexassetscontent li {
  -webkit-text-size-adjust: 100%;
  font-size: var(--text-sm);
  color: #AAA;
  -webkit-user-drag: element;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: calc(10em * var(--av-grid-scale));
  height: calc(10em * var(--av-grid-scale));
  display: inline-block;
  vertical-align: top;
  margin: 0.5em;
  margin-top: 0.75em;
  padding: 0;
  box-shadow: 0 0 2px rgba(0, 0, 0, .14);
  overflow: hidden;
  background: linear-gradient(180deg, var(--secondary) 10%, var(--card));
  cursor: pointer;
  text-align: center;
  position: relative;
  outline: 1px solid light-dark(#dfdfdf, #ffffff2c);
  border-radius: 10%;
}
.lexassetscontent .lexitemdesc {
  position: fixed;
  font-weight: 600;
  white-space: nowrap;
  background-color: var(--secondary-foreground);
  color: var(--secondary);
  font-size: var(--text-xs);
  border-radius: 0.5rem;
  display: none;
  opacity: 0;
  z-index: 102;
  padding: 4px 8px;
  transition: opacity ease-in 0.1s;
  pointer-events: none;
}
.lexassetscontent li:hover + .lexitemdesc {
  opacity: 1;
}
.lexassetscontent.list li, .lexassetscontent.compact li {
  width: 100%;
  height: 1.8em;
  border-top: 0px;
  border-left: 4px solid transparent;
  border-radius: 4px;
  margin: 0;
  margin-top: 0.4em;
  margin-bottom: 0.4em;
}
.lexassetscontent .asset-file-preview {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 20px);
  padding-top: 16px;
}
.lexassetscontent .asset-file-preview text {
  font-size: 4rem;
  text-anchor: middle;
  font-family: var(--global-code-font);
  font-feature-settings: "ss02", 'ss19', "ss20";
  font-weight: 800;
  color: var(--muted-foreground);
}
.lexassetscontent li:hover {
  outline: 2px solid var(--accent);
}
.lexassetscontent li.selected {
  transition: none !important;
  outline: 2px solid var(--accent);
  font-weight: bold;
}
.lexassetscontent li .lexassettitle {
  -webkit-text-size-adjust: 100%;
  text-shadow: 0 0 2px #00000048;
  transition: all 0.1s;
}
.lexassetscontent.list li .lexassettitle, .lexassetscontent.compact li .lexassettitle {
  width: 100%;
  height: 100%;
  text-align: left;
  padding-left: 2em;
}
.lexassetscontent li .lexassetinfo {
  -webkit-text-size-adjust: 100%;
  color: #999;
  position: absolute;
  overflow: hidden;
  text-align: left;
  padding: 3px;
  top: 0;
  transition: all 0.1s;
  display: none;
}
.lexassetscontent.list li .lexassetinfo, .lexassetscontent.compact li .lexassetinfo {
  display: block;
  right: 6px;
  z-index: 1;
}
.lexassetscontent.list li:has(.lexcheckbox) .lexassetinfo, .lexassetscontent.compact li:has(.lexcheckbox) .lexassetinfo {
  display: block;
  right: 32px;
  z-index: 1;
}
.lexassetscontent li .lexcheckbox {
  position: absolute;
  display: block;
  z-index: 100;
  width: 1.15em;
  height: 1.15em;
}
.lexassetscontent.list li .lexcheckbox, .lexassetscontent.compact li .lexcheckbox {
  right: 3px;
  top: 3px;
}
.lexassetscontent li.selected .lexassettitle {
  color: #f5f5f5;
  text-shadow: 0 0 3px black;
  background-color: var(--accent);
}
.lexassetscontent li img {
  -webkit-text-size-adjust: 100%;
  cursor: pointer;
  text-align: center;
  color: white;
  border: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.2s;
}
.lexassetscontent li video {
  z-index: 1;
  object-fit: cover;
  height: calc(100% - 24px);
}
.lexassetscontent.list img, .lexassetscontent.compact img {
  width: unset;
  object-fit: contain;
  float: left;
  z-index: 1;
  position: relative;
}
.lexassetscontent li.folder img {
  transform: translateY(-6px);
}
.lexassetscontent.list li.folder img, .lexassetscontent.compact li.folder img {
  transform: scale(0.9);
}
.lexassetscontent li:hover img {
  transform: scale(1.12);
}
.moving-to-folder {
  animation: moveToFolder 0.25s cubic-bezier(0.4, 0, 0.3, 1) forwards;
  pointer-events: none;
  opacity: 0.8;
}
@keyframes moveToFolder {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(0.6);
    opacity: 0;
  }
}
.tour-mask {
  background-color: #1f1f1fe7;
  --webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  z-index: 109;
  clip-path: url(#svgTourClipPath);
}
.tour-ref-mask {
  background-color: #1f1f1fe7;
  --webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  z-index: 110;
  mask: url(#svgTourReferenceMask);
}
@keyframes skeletonHide {
  from {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
  }
  to {
    opacity: 0;
    transform: translate3d(0, 12.5%, 0) scale3d(0.75, 0.75, 0.75);
  }
}
.lexskeleton[data-closed] {
  animation: skeletonHide 0.2s forwards;
}
@keyframes skeleton-shimmer {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
.lexskeleton *.lexskeletonpart {
  position: relative;
  overflow: hidden;
  background-color: var(--secondary);
  border-radius: 0.375rem;
  pointer-events: none;
  animation: skeleton-shimmer 2.5s linear infinite;
}
.codebasearea * {
  letter-spacing: 0em !important;
}
.codebasearea .lexareatabs {
  padding: 0px;
  margin: 0px;
  gap: 0;
  background-color: var(--card);
  border: none;
}
.codebasearea .lexareatab {
  padding: 5px;
  border-radius: 0px !important;
  margin: 0px !important;
  border: none;
  background-color: var(--card) !important;
  transition: none;
  display: flex !important;
  color: var(--muted-foreground) !important;
}
.codebasearea .lexareatab:hover {
  background-color: var(--secondary) !important;
}
.codebasearea .lexareatab:first-child {
  border-top-left-radius: 8px !important;
}
.codebasearea .lexareatab:last-child {
  border-top-right-radius: 8px !important;
}
.codebasearea .lexareatab.selected {
  background-color: var(--secondary) !important;
  color: var(--foreground) !important;
}
.codebasearea .lexareatab i {
  width: 12px;
  font-size: var(--text-sm);
  margin-right: 6px;
  align-content: center;
}
.codebasearea .lexareatab img {
  width: 12px;
  height: 12px;
  margin-right: 6px;
  align-content: center;
}
.lexcodeeditor ::-webkit-scrollbar {
  width: 6px;
  height: 6px;
  background: none;
}
.lexcodeeditor ::-webkit-scrollbar-thumb {
  background: #8c8c909c;
}
.lexcodeeditor ::-webkit-scrollbar-thumb:hover {
  background: #afafb4c2;
}
.lexcodeeditor .lexareatabscontent {
  overflow: hidden;
}
.lexcodetabinfo {
  background-color: var(--card);
  position: absolute;
  z-index: 3;
  bottom: 0px;
  justify-items: end;
  padding: 0.25rem 1rem;
}
.lexcodegutter {
  width: 48px;
  background-color: inherit;
  overflow: hidden;
  position: absolute;
  top: 0;
}
.lexcodeeditor .lexcodearea {
  width: 100%;
  background-color: inherit;
  overflow: scroll;
}
.lexcodeeditor .lexcodearea.dragging {
  background-color: var(--secondary);
}
.lexcodeeditor .code {
  cursor: text;
  font-family: var(--global-code-font);
  font-feature-settings: "ss02", 'ss19', "ss20";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: var(--code-editor-font-size);
  position: relative;
}
.codechar {
  font-family: var(--global-code-font);
  font-feature-settings: "ss02", 'ss19', "ss20";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: var(--code-editor-font-size);
  position: absolute;
  top: 0;
  left: 0;
  padding: 0;
  margin: 0;
}
.lexcodeeditor pre {
  -webkit-text-size-adjust: 100%;
  font-family: var(--global-code-font);
  font-feature-settings: "ss02", 'ss19', "ss20";
  font-size: var(--code-editor-font-size);
  cursor: text;
  box-sizing: border-box;
  border-radius: 0;
  border-width: 0;
  background: transparent;
  margin: 0px 0px;
  white-space: pre;
  word-wrap: normal;
  line-height: inherit;
  color: var(--foreground);
  position: relative;
  overflow: visible;
  -webkit-tap-highlight-color: transparent;
  height: var(--code-editor-row-height);
  pointer-events: none;
}
.lexcodeeditor pre.active-line {
  background-color: var(--muted);
}
.lexcodeeditor.disabled pre.active-line {
  background-color: transparent;
}
.lexcodeeditor pre.added {
  background-color: #40db212f !important;
}
.lexcodeeditor pre.removed {
  background-color: #db21212f !important;
}
.lexcodeeditor pre.debug {
  background-color: #fffb002f !important;
}
.lexcodeeditor.disabled .lexareatab {
  cursor: default;
}
.lexcodeeditor span {
  -webkit-text-size-adjust: 100%;
  cursor: text;
  font-family: inherit;
  font-size: inherit;
  white-space: pre;
  word-wrap: normal;
  line-height: inherit;
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box;
  display: inline-block;
}
.lexcodeeditor pre .line-gutter {
  width: 48px;
  height: var(--code-editor-row-height);
  font-size: var(--code-editor-font-size);
  font-weight: 400;
  color: var(--muted-foreground);
  line-height: var(--code-editor-row-height);
  text-align: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: sticky;
  left: 0;
  z-index: 1;
}
.lexcodeeditor pre.active-line .line-gutter {
  color: var(--foreground);
}
.lexcodeeditor.no-gutter pre .line-gutter {
  opacity: 0;
}
.lexcodeeditor .cursors, .lexcodeeditor .selections {
  -webkit-text-size-adjust: 100%;
  font-family: monospace;
  color: #AAA !important;
  font-size: 16px;
  cursor: text;
  box-sizing: border-box;
  visibility: hidden;
  margin: 0;
  padding: 0;
  position: relative;
  pointer-events: none;
}
.lexcodeeditor .cursors.show, .lexcodeeditor .selections.show {
  visibility: visible;
}
.lexcodeeditor .cursors .cursor {
  -webkit-text-size-adjust: 100%;
  font-family: monospace;
  font-size: 16px;
  cursor: text;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border-right: none;
  width: 0;
  height: var(--code-editor-row-height);
  position: absolute;
  border-left: 3px solid var(--foreground) !important;
  z-index: 1 !important;
  opacity: 0.6;
  left: 0px;
  top: 0px;
}
.lexcodescrollbar {
  width: 10px;
  position: absolute;
  background-color: transparent;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  z-index: 1 !important;
  right: 0px;
  pointer-events: none;
}
.lexcodescrollbar.horizontal {
  width: calc(100% - 48px);
  height: 10px;
  bottom: 0px;
  left: 48px;
}
.lexcodescrollbar div {
  background-color: var(--secondary) !important;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border-right: none;
  position: absolute;
  z-index: 0 !important;
  top: 0px;
  width: 10px;
  height: 10px;
  transition: linear 0.1s background-color;
  pointer-events: all;
}
.lexcodescrollbar div:hover {
  background-color: var(--secondary) !important;
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in srgb, var(--secondary), #fff 10%) !important;
  }
}
.lexcodeeditor .lexcodeselection, .lexcodeeditor .lexcodesearchresult {
  -webkit-text-size-adjust: 100%;
  font-family: monospace;
  color: #AAA !important;
  font-size: 15px;
  cursor: text;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border-right: none;
  border-radius: 1px;
  position: absolute;
  z-index: 0 !important;
  left: 0px;
  top: 0px;
  width: 100px;
  height: var(--code-editor-row-height);
  background-color: var(--color-blue-600);
  opacity: 0.25;
}
.lexcodeeditor .lexcodesearchresult {
  background-color: #f5f115;
  opacity: 0.5;
}
.lexcodeeditor .searchbox {
  background-color: var(--card);
  position: absolute;
  right: 6px;
  top: 26px;
  z-index: 100;
  border-radius: 8px;
  border: 1px solid var(--border);
  box-shadow: 0 0px 4px #101010;
  overflow-y: scroll;
  transform: translateY(-96px);
  opacity: 0;
  transition: transform 0.2s ease-in, opacity 0.2s ease-in;
}
.lexcodeeditor .searchbox.opened {
  transform: translateY(0px);
  opacity: 1;
}
.lexcodeeditor .searchbox .lexpanel span {
  height: 11px;
}
.lexcodeeditor .autocomplete {
  background-color: var(--card);
  width: 256px;
  max-height: 132px;
  position: absolute;
  left: 0;
  top: 0;
  visibility: hidden;
  z-index: 100;
  border-radius: 8px;
  border: 1px solid var(--border);
  box-shadow: 0 0px 4px #101010;
  overflow-x: hidden;
  overflow-y: scroll;
}
.lexcodeeditor .autocomplete.no-scrollbar::-webkit-scrollbar {
  display: none;
}
.lexcodeeditor .autocomplete.show {
  visibility: visible;
}
.lexcodeeditor .autocomplete pre {
  margin: 0;
  pointer-events: unset;
  cursor: default;
  height: 22px;
  padding-left: 6px;
  display: flex;
  align-items: center;
}
.lexcodeeditor .autocomplete pre:hover {
  background-color: var(--secondary);
  cursor: pointer;
}
.lexcodeeditor .autocomplete pre.selected {
  background-color: var(--accent);
}
.lexcodeeditor .autocomplete pre.selected svg {
  color: white !important;
}
.lexcodeeditor .autocomplete pre span {
  cursor: inherit;
}
.lexcodeeditor .autocomplete pre span.word-highlight {
  color: var(--color-blue-500);
}
.lexcodeeditor .autocomplete pre.selected span.word-highlight {
  color: var(--color-blue-400);
}
.lexcodesnippet {
  box-shadow: 0 3px 8px 0 rgba(0, 0, 0, 0.6);
  border: 2px solid var(--secondary);
}
.lexcodesnippet .lexareatabs.row {
  border-radius: 0;
}
.lexcodesnippet .lexwindowbuttons {
  width: 100px;
  padding-inline: 16px;
  display: inline-flex;
  gap: 6px;
  align-items: center;
  justify-content: center;
}
.lexcodesnippet .lexwindowbuttons span {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  cursor: default;
}
.cm-str {
  color: #ca7d59;
}
.cm-std {
  color: #d181d1;
}
.cm-kwd {
  color: #2194ce;
}
.cm-com {
  color: #5cab5a;
}
.cm-typ {
  color: #36c0b0;
}
.cm-dec {
  color: #b1ce9b;
}
.cm-bln.javascript {
  color: #d2d6f5;
}
.cm-sym.javascript {
  color: #e7ded2;
}
.cm-mtd.javascript {
  color: #e9d98a;
}
.cm-mtd.typescript {
  color: #e9d98a;
}
.cm-enu.typescript {
  color: #4cacff;
}
.cm-bln.c {
  color: #d44141;
}
.cm-dec.c {
  color: #2ddf53;
}
.cm-sym.c {
  color: #e7ded2;
}
.cm-mtd.c {
  color: #7a9ae0;
}
.cm-ppc.c {
  color: #969696;
}
.cm-bln.cpp {
  color: #d44141;
}
.cm-dec.cpp {
  color: #2ddf53;
}
.cm-sym.cpp {
  color: #e7ded2;
}
.cm-mtd.cpp {
  color: #7a9ae0;
}
.cm-ppc.cpp {
  color: #969696;
}
.cm-enu.cpp {
  color: #b1ce9b;
}
.cm-sym.cmake {
  color: #cf6dcf;
}
.cm-kwd.css {
  color: #e8be53;
}
.cm-typ.css {
  color: #b7c3ec;
}
.cm-bln.css {
  color: #2194ce;
}
.cm-sym.css {
  color: #f9d620;
}
.cm-mtd.css {
  color: #e0cc68;
}
.cm-sym.json {
  color: #cf6dcf;
}
.cm-sym.glsl {
  color: #f9cb20;
}
.cm-mtd.glsl {
  color: #e0cc68;
}
.cm-mtd.wgsl {
  color: #dfe093;
}
.cm-sym.wgsl {
  color: #f9cb20;
}
.cm-ppc.wgsl {
  color: #99caf1;
}
.cm-bln.wgsl {
  color: #bebebe;
}
.cm-sym.rust {
  color: #e7ded2;
}
.cm-mtd.rust {
  color: #e0cc68;
}
.cm-sym.python {
  color: #e7ded2;
}
.cm-mtd.python {
  color: #e0cc68;
}
.cm-sym.batch {
  color: #dfd85e;
}
.cm-bln.html {
  color: #a1d2f0;
}
.cm-sym.html {
  color: #929292;
}
.cm-bln.xml {
  color: #a1d2f0;
}
.cm-sym.xml {
  color: #929292;
}
.cm-bln.markdown {
  color: #a1d2f0;
}
.cm-sym.php {
  color: #cf6dcf;
}
.cm-mtd.php {
  color: #ddce80;
}
.cm-bln.php {
  color: #ddce80;
}
.cm-var.php {
  color: #88bde9;
}
:root[data-mode="light"] .lexcodeeditor pre.active-line {
  background-color: #e4e0e0ab;
}
:root[data-mode="light"] .lexcodeeditor.disabled pre.active-line {
  background: none;
}
:root[data-mode="light"] .lexcodescrollbar div {
  background-color: #8383839d !important;
}
:root[data-mode="light"] .lexcodescrollbar div:hover {
  background-color: #5e5e5ea9 !important;
}
:root[data-mode="light"] {
  & .cm-str {
    color: #c3470c;
  }
  & .cm-std {
    color: #a753c0;
  }
  & .cm-kwd {
    color: #006cff;
  }
  & .cm-com {
    color: #188038;
  }
  & .cm-typ.javascript {
    color: #0b9484;
  }
  & .cm-dec.javascript {
    color: #c5221f;
  }
  & .cm-sym.javascript {
    color: #333333;
  }
  & .cm-mtd.javascript {
    color: #1a54a7;
  }
  & .cm-bln.javascript {
    color: #510000;
  }
  & .cm-typ.c {
    color: #0b9484;
  }
  & .cm-bln.c {
    color: #333333;
  }
  & .cm-dec.c {
    color: #c5221f;
  }
  & .cm-sym.c {
    color: #333333;
  }
  & .cm-mtd.c {
    color: #1a54a7;
  }
  & .cm-ppc.c {
    color: #626262;
  }
  & .cm-typ.cpp {
    color: #0b9484;
  }
  & .cm-bln.cpp {
    color: #333333;
  }
  & .cm-dec.cpp {
    color: #c5221f;
  }
  & .cm-sym.cpp {
    color: #333333;
  }
  & .cm-mtd.cpp {
    color: #1a54a7;
  }
  & .cm-ppc.cpp {
    color: #626262;
  }
  & .cm-sym.cmake {
    color: #a753c0;
  }
  & .cm-kwd.css {
    color: #c49319;
  }
  & .cm-typ.css {
    color: #1a54a7;
  }
  & .cm-bln.css {
    color: #2194ce;
  }
  & .cm-dec.css {
    color: #c5221f;
  }
  & .cm-sym.css {
    color: #a753c0;
  }
  & .cm-dec.json {
    color: #c5221f;
  }
  & .cm-sym.json {
    color: #a753c0;
  }
  & .cm-typ.glsl {
    color: #0b9484;
  }
  & .cm-dec.glsl {
    color: #c5221f;
  }
  & .cm-mtd.glsl {
    color: #1a54a7;
  }
  & .cm-sym.glsl {
    color: #a753c0;
  }
  & .cm-typ.wgsl {
    color: #0b9484;
  }
  & .cm-dec.wgsl {
    color: #c5221f;
  }
  & .cm-mtd.wgsl {
    color: #1a54a7;
  }
  & .cm-sym.wgsl {
    color: #a753c0;
  }
  & .cm-ppc.wgsl {
    color: #626262;
  }
  & .cm-typ.rust {
    color: #0b9484;
  }
  & .cm-dec.rust {
    color: #c5221f;
  }
  & .cm-sym.rust {
    color: #333333;
  }
  & .cm-mtd.rust {
    color: #1a54a7;
  }
  & .cm-typ.python {
    color: #0b9484;
  }
  & .cm-dec.python {
    color: #c5221f;
  }
  & .cm-sym.python {
    color: #333333;
  }
  & .cm-mtd.python {
    color: #1a54a7;
  }
  & .cm-dec.batch {
    color: #c5221f;
  }
  & .cm-sym.batch {
    color: #a753c0;
  }
  & .cm-bln.html {
    color: #1a54a7;
  }
  & .cm-sym.html {
    color: #696969;
  }
  & .cm-bln.xml {
    color: #a1d2f0;
  }
  & .cm-sym.xml {
    color: #929292;
  }
  & .cm-bln.markdown {
    color: #a1d2f0;
  }
}
.lexgraph {
  overflow: hidden;
  position: relative;
  outline: none;
  cursor: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAA4lJREFUWEftl1FIk1EUx/9qOGtNU4wkC1RQEc2hD9P5oigqH1PxIQqhgYI+iHtIE0ZQKoZo6BDniFScsIcgCSEILMPhJBRCh6G+qKSopHy2iVnOudniyDdZY3NTJ/rghcvGuPvO7/zP/557Pz+c8/A75/i4cAAERNPGzTMXyFEBfwAB6+vrqoiIiMcA9gFYzhrEEeAKgKC1tbX6nZ2dh3t7e3UJCQnvAJgBWM8KxBkgWKvV3g8KCnoZFxfHZ1l2fHV1tS4vL+8rgD1OFZ+WxREgAMCN0tLSex0dHR9DQkJ4ra2tkMlkFoPBoGppaWlTqVQGrix/fUXhCEDfQwDcMRqNY9nZ2YKpqSkkJydDoVBYExMTN7a3t5vi4+M1AHZ9VRbnbXgdQOTs7OzbtrY2YV9f32GiUqkU7e3tFpPJNL6ystKckZExyvmDzHri4QxwFUDE2NhYvV6vL5HJZIHOT6ay1NTU2FiW7RoYGFBUVVWtnKYszgAU8KZarS5JSkpqEIlEfFepRUdHo7e3dzclJWVrc3NTERMT8/qkZXEGICOGSSQSYX9//yCfz6et6XYUFxdDrVbTNp1YWlpqT01NHTxuWZwB7Ea8y7LsF4ZhgicnJ90C8Hg8ZGZmQiwWo6GhAQaD4VV4ePgTDoK6qcfh6iw4MOL09PSbzs7O1O7u7v8eEhsbC4lEgtzcXLNYLPa32WyW5eXlaaPR+Hlubm64srJyAsAOAK+2qisAMuItnU73fH5+/lF5efmhEaurq9HY2GhZWFhYWlxcnNRqtd9UKtUsgF8AqEf8BLDF+eHEClDA8J6engcikahJKBReIwnS0tIwMjKyL5fLXyiVSqoLBfrDZWsCQJMyt/cIj/LTAlcKkBFDs7KykoaGhoYDAwPpkIJOp9u1Wq0fcnJyOgFscFlTMGrRdFbQpJ7glfR2OlcAjkbUMQwTWlBQgLKystWoqCgpgGVObsqYgh4roLMs7i4kZMTbMzMzGqVSmdbV1UXt+Gltbe17AD8A/PbVweQO4MCIo6OjcoFAIDWbzZ/S09ObAVDX2+Rk96rGnha5AyAjhmk0msL8/PxnDMOU6fX67wBYzmxeOdxTcHcmpN/JiILCwsLIiooKcVFR0TCX+bavpD/KhHYwHt2QAFA7JqfbHe9NYl6vOepWfHBHBECftL1o+kx6Twp4ncFpF16494LTJnTs/18qcKnAPygqQzAAgQjBAAAAAElFTkSuQmCC) 4 4, auto !important;
}
.lexgraph .lexselect ul {
  max-height: unset;
}
.lexgraph .lexgraphnodes, .lexgraph .lexgraphlinks {
  width: 100%;
  height: 100%;
  position: absolute;
}
.lexgraph .lexgraphlinks {
  pointer-events: none;
}
.lexgraph .lexgraphlinks path {
  stroke-width: 3px;
  stroke-opacity: 0.9;
}
.lexgraph .lexgraphlinks path.running {
  stroke-dasharray: 5px;
  stroke-linecap: round;
  stroke-dashoffset: 50;
  animation: dash 1s linear;
  animation-iteration-count: infinite;
}
@keyframes dash {
  to {
    stroke-dashoffset: 0;
  }
}
.lexgraph svg {
  position: absolute;
  overflow: visible;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
.lexgraph .box-selection-svg {
  stroke-width: 3px;
  stroke: var(--accent);
  border-radius: 8px;
  fill: var(--accent);
  fill-opacity: 0.2;
}
.lexgraph .box-selection-svg.removing {
  stroke-dasharray: 6px;
  stroke-linecap: round;
}
.lexgraphnode {
  position: absolute;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: pointer;
  min-width: 96px;
  min-height: 32px;
  border-radius: 10px;
  background: linear-gradient(15deg, #161616da 10%, #080808da);
  background-color: unset;
  background-origin: border-box;
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  border: 3px solid transparent;
  transition: border 0.05s linear;
  padding: 4px;
}
.lexgraphnode.math {
  background: linear-gradient(15deg, #0687d1da 10%, #00ffccda);
  background-color: unset;
  background-origin: border-box;
}
.lexgraphnode.logic {
  background: linear-gradient(15deg, #FB4D3Dda 10%, #A74482da);
  background-color: unset;
  background-origin: border-box;
}
.lexgraphnode.inputs {
  background: linear-gradient(15deg, #84e100da 10%, #79a095da);
  background-color: unset;
  background-origin: border-box;
}
.lexgraphnode.variables {
  background: linear-gradient(15deg, #f14343da 10%, #e7b88bda);
  background-color: unset;
  background-origin: border-box;
}
.lexgraphnode.events {
  background: linear-gradient(15deg, #ec49d7da 10%, #8dc0b8da);
  background-color: unset;
  background-origin: border-box;
}
.lexgraphnode.function {
  background: linear-gradient(15deg, #d19b06da 10%, #ff7b00da);
  background-color: unset;
  background-origin: border-box;
}
.lexgraphnode.selected {
  border: 3px solid #ffc107;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, .14);
}
.lexgraphnode .lexgraphnodeheader, .lexgraphnode .lexgraphnodeproperties {
  font-family: var(--global-title-font);
  font-weight: 600;
  font-size: var(--text-sm);
  color: #fff;
  text-shadow: 0px 0px 2px #1b1b1bdc;
  border-bottom: 1px solid #ffffff46;
  margin-bottom: 2px;
  pointer-events: none;
  text-align: -webkit-center;
  text-align: center;
  margin-left: -7px;
  width: calc(100% + 14px);
}
.lexgraphnode.selected .lexgraphnodeheader, .lexgraphnode.selected .lexgraphnodeproperties {
  margin-left: -4px;
  width: calc(100% + 8px);
}
.lexgraphnode .lexgraphnodeproperties {
  pointer-events: all;
}
.lexgraphnode .lexgraphnodeios {
  display: flex;
  pointer-events: none;
}
.lexgraphnode .lexgraphnodeios .lexgraphnodeinputs {
  margin-right: 6px;
  flex: 1 1 auto;
}
.lexgraphnode .lexgraphnodeios .lexgraphnodeoutputs {
  margin-left: 6px;
  flex: 0 0 auto;
}
.lexgraphnode .lexgraphnodeio {
  font-family: var(--global-title-font);
  font-size: var(--text-xs);
  color: #d9d9e3;
  text-shadow: 0px 1px 6px #22222283;
  min-height: 18px;
  display: flex;
  gap: 0.3rem;
  align-items: center;
  position: relative;
}
.lexgraphnode .lexgraphnodeio.iooutput {
  justify-content: right;
}
.lexgraphnode .lexgraphnodeio .io__type {
  font-size: calc(var(--text-xs) - 0.25rem);
  font-weight: 700;
  line-height: 1;
  min-width: 11px;
  max-width: 11px;
  min-height: 10px;
  max-height: 10px;
  background-color: var(--secondary);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--secondary) 30%, transparent);
  }
  align-self: center;
  border-radius: 3px;
  text-align: -webkit-center;
  text-align: center;
  border: 1px solid #afafaf6b;
  color: var(--foreground);
  pointer-events: all;
}
.lexgraphnode .lexgraphnodeio .io__type span {
  pointer-events: none;
}
.lexgraphnode .lexgraphnodeio .io__typedesc {
  position: absolute;
  margin-left: -2rem;
  font-weight: 600;
  background-color: var(--secondary);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--secondary) 30%, transparent);
  }
  color: var(--foreground);
  font-size: calc(var(--text-xs) - 0.15rem);
  border-radius: 4px;
  padding-inline: 0.25rem;
  text-align: center;
  opacity: 0;
  transition: opacity ease-in 0.1s;
}
.lexgraphnode .lexgraphnodeio .io__typedesc.output {
  margin-right: -2rem;
}
.lexgraphnode .lexgraphnodeio .io__type.bool, .lexgraphnode .lexgraphnodeio .io__typedesc.bool {
  background-color: #e43636;
}
.lexgraphnode .lexgraphnodeio .io__type.vec2, .lexgraphnode .lexgraphnodeio .io__typedesc.vec2 {
  background-color: #ecea4c;
}
.lexgraphnode .lexgraphnodeio .io__type.vec3, .lexgraphnode .lexgraphnodeio .io__typedesc.vec3 {
  background-color: #ee87e5;
}
.lexgraphnode .lexgraphnodeio .io__type.vec4, .lexgraphnode .lexgraphnodeio .io__typedesc.vec4 {
  background-color: #9d56d8;
}
.lexgraphnode .lexgraphnodeio .io__type.string, .lexgraphnode .lexgraphnodeio .io__typedesc.string {
  background-color: #53b97e;
}
.lexgraphnode .lexgraphnodeio .io__type.mat, .lexgraphnode .lexgraphnodeio .io__typedesc.mat {
  background-color: #56a8d8;
}
.lexgraphnode .lexgraphnodeio .io__type.output {
  margin-right: unset;
  margin-left: 3px;
}
.lexgraphnode .lexgraphnodeio:hover .io__typedesc {
  opacity: 1;
}
.lexgraphnode .lexgraphnodeio .io__type:hover {
  filter: brightness(1.2);
}
.lexgraphnode .lexgraphnodeio[data-active] .io__type:hover {
  background-color: rgba(255, 58, 58, 0.829);
}
.lexgraphnode .lexgraphnodeio[data-active] .io__type:hover span {
  display: none;
}
.lexgraphnode .lexgraphnodeio[data-active] .io__type:hover::after {
  content: 'X';
}
.lexgraphnode .lexgraphnodeio[data-active] .io__type {
  filter: brightness(1.4);
}
.lexgraph .lexgraphpropdialog {
  transform: translateY(-96px);
}
.lexgraph .lexgraphpropdialog.opened {
  transform: translateY(0px);
}
.lexgraph .lexgraphgroups {
  z-index: 1;
}
.lexgraphgroup {
  position: absolute;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: pointer;
  min-width: 96px;
  min-height: 32px;
  border-radius: 8px;
  background: linear-gradient(35deg, #949292 10%, #a7c4bd);
  background-color: unset;
  background-origin: border-box;
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  border: 1px solid var(--input);
  transition: border 0.05s linear;
  opacity: 0.5;
}
.lexgraphgroup .lexgraphgrouptitle {
  font-size: var(--text-lg);
  font-family: var(--global-title-font);
  font-weight: 600;
  margin: 8px;
  color: var(--foreground);
  outline: none;
  border: none;
  background: none;
  max-width: 128px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  border-bottom: 1px solid var(--foreground);
}
.lexgraphgroup .lexgraphgrouptitle:disabled {
  pointer-events: none;
  border: none;
}
.lexgraphgroup .lexgraphgroupresizer {
  position: absolute;
  bottom: 2px;
  right: 2px;
  width: 12px;
  height: 12px;
  border-bottom: 2px solid var(--foreground);
  border-right: 2px solid var(--foreground);
  border-bottom-right-radius: 8px;
}
.lexgraphgroup .lexgraphgroupresizer:hover {
  border-bottom: 2px solid #4b4b4ba8;
  border-right: 2px solid #4b4b4ba8;
}
.grapharea .graph-title button {
  font-size: var(--text-xl);
  font-family: var(--global-title-font);
  font-weight: 600;
  color: var(--primary-foreground);
}
.lexvideoeditor {
  display: flex;
  justify-content: center;
}
.lexvideoeditor video {
  width: 100%;
  height: 100%;
}
.lexvideoeditor .lexarea .lexflexarea {
  display: flex;
  justify-content: center;
  padding: 4px 0px;
}
.lexvideoeditor .lexconstrolsarea {
  min-height: 88px !important;
  border-radius: 8px;
  display: flex;
  align-content: center;
  flex-direction: column;
  justify-content: center;
}
.lexvideoeditor .lexcontrolspanel {
  background-color: var(--background);
  margin: 0;
  display: flex;
  align-content: center;
  width: 100% !important;
}
.lexvideoeditor .lexcontrolspanel.lextime {
  width: auto !important;
  border-radius: 5px;
}
.lexvideoeditor .lextimebar {
  width: 100%;
  height: inherit;
}
.lexvideoeditor .lexcomponent.nobranch {
  padding: 0;
  width: 100% !important;
}
.lexvideoeditor .lextext {
  padding-left: 0;
  padding: 6px;
}
.lexvideoeditor .lexbar {
  height: 40px !important;
  margin: 5px 10px;
  padding: 5px;
  width: calc(100% - 40px) !important;
}
.resizeable {
  resize: both;
  overflow: auto;
}
.resize-area {
  position: absolute;
  border: 2px double var(--color-blue-400);
  cursor: move;
  z-index: 100;
}
.resize-handle {
  position: absolute;
  width: 10px;
  height: 10px;
  background-color: #ffffff;
  cursor: pointer;
  border-radius: 5px;
  border-style: solid;
  border-width: 1.5px;
}
.resize-handle.tl {
  top: -5px;
  left: -5px;
  cursor: nwse-resize;
}
.resize-handle.tr {
  top: -5px;
  right: -5px;
  cursor: nesw-resize;
}
.resize-handle.bl {
  bottom: -5px;
  left: -5px;
  cursor: nesw-resize;
}
.resize-handle.br {
  bottom: -5px;
  right: -5px;
  cursor: nwse-resize;
}
.resize-handle.r {
  top: 50%;
  right: -5px;
  cursor: ew-resize;
}
.resize-handle.l {
  top: 50%;
  left: -5px;
  cursor: ew-resize;
}
.resize-handle.t {
  top: -5px;
  left: 50%;
  cursor: ns-resize;
}
.resize-handle.b {
  bottom: -5px;
  left: 50%;
  cursor: ns-resize;
}
.hover\:scale-xs:hover {
  transform: scale(1.01);
  transition: transform 0.3s cubic-bezier(.42,.97,.52,1.19);
}
.hover\:scale-sm:hover {
  transform: scale(1.025);
  transition: transform 0.3s cubic-bezier(.42,.97,.52,1.19);
}
.hover\:scale-md:hover {
  transform: scale(1.05);
  transition: transform 0.3s cubic-bezier(.42,.97,.52,1.19);
}
.hover\:scale-lg:hover {
  transform: scale(1.1);
  transition: transform 0.3s cubic-bezier(.42,.97,.52,1.19);
}
.hover\:scale-xl:hover {
  transform: scale(1.25);
  transition: transform 0.3s cubic-bezier(.42,.97,.52,1.19);
}
.font-code {
  font-family: var(--global-code-font);
}
.border-color {
  border: 1px solid var(--border);
}
.border-t-color {
  border-top: 1px solid var(--border);
}
.border-b-color {
  border-bottom: 1px solid var(--border);
}
.border-l-color {
  border-left: 1px solid var(--border);
}
.border-r-color {
  border-right: 1px solid var(--border);
}
.border-input {
  border: 1px solid var(--input);
}
.border-t-input {
  border-top: 1px solid var(--input);
}
.border-b-input {
  border-bottom: 1px solid var(--input);
}
.border-l-input {
  border-left: 1px solid var(--input);
}
.border-r-input {
  border-right: 1px solid var(--input);
}
.flex-auto-keep {
  flex: 0 0 auto;
}
.flex-auto-fill {
  flex: 1 1 auto;
}
.select-none {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-x-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-duration: initial;
      --tw-ease: initial;
    }
  }
}

/* lexguidocs.css @jxarco */

:root {
	--panel-width: 300px;
	--page-padding: 24px;
	--max-width: 80%;
	--stylish-color: light-dark(#e01291, #e2c886);
}

.lexdocs-content {
	font-family: var(--global-font);
	tab-size: 4;
	max-width: var(--max-width);
	width: 95%;
	height: auto;
	margin: 0 auto;
	padding: var(--page-padding);
	padding-bottom: 4rem;
	word-break: break-word;
	text-align: justify;
	border-radius: 12px;

	& ul, & ol {
		list-style: unset;
		margin-block: 1rem;
	}

	& :where(h1, h2, h3, h4) {
		letter-spacing: -1px;
	}

	& p, & li {
		color: var(--secondary-foreground);
	}

	& h1 {
		font-size: 2rem;
		line-height: 48px;
		margin-left: -2px;
    	margin-block: 1rem;
		font-optical-sizing: auto;
		font-weight: 600;
		font-style: normal;
		font-variation-settings: "wdth" 100;
	}

	& h2 {
		font-size: 1.6rem;
		line-height: 36px;
		font-weight: 600;
		margin-left: -1px;
		margin-block: 0.75em;
	}

	& h3 {
		font-size: 1.25rem;
		line-height: 28px;
		font-weight: 600;
		margin-block: 0.75em;
	}
}

.lexdocs-content .lexarea.docs {
	margin-block: 1.5em;
	width: 90% !important;
	justify-self: center;
}

.lexdocs-content::-webkit-scrollbar {
    display: none;
}

.code-container {
	position: relative;
	margin: 16px calc(-1 * var(--page-padding));
}

.code-container button {
	border: none;
	outline: none;
	background: none;
	position: absolute;
	top: 12px;
	right: 12px;
	font-size: 18px;
	padding: 6px;
	color: #bbb;
	transition: color 0.25s;
	z-index: 1;
}

.code-container button:hover {
	color: #ccc;
	cursor: pointer;
}

button.copied svg {
	color: #42d065;
}

.lexdocs-content .lexpanel a, .lexdocs-content .lexarea a {
	color: unset;
}

code {
	font-family: "CascadiaCode", monospace;
	font-size: 14px;
	line-height: calc(var(--line-height) - 1px);
	background-color: var(--card);
	text-align: unset !important;
	text-justify: unset !important;
}

code.inline {
	display: inline-block;
	vertical-align: middle;
	border-radius: 0.5rem;
	padding: 0 0.5rem;
	margin: 0;
}

code.inline:not(.ref) {
	color: var(--stylish-color);
	font-weight: 500;
}

code:not(.inline) {
	display: block;
	padding: calc(var(--page-padding) - 6px) var(--page-padding);
	/* white-space: pre-wrap; */
	overflow: auto;
	box-sizing: border-box;
	position: relative;
	border-radius: 1rem;
	line-height: 1.5;
	border: 1px solid var(--border);
}

code.inline.table {
	padding: 0px 0.25rem;
	line-height: unset;
	font-size: var(--text-sm);
}

code.inline.desc {
	background-color: var(--muted);
	color: var(--muted-foreground);
	font-size: 12px;
}

.lexdocs-content strong {
	font-weight: 700;
}

.lexdocs-content a.permalink {
	float: right;
	margin-left: 5px;
	display: none;
}

.lexdocs-content > img {
	width: 100%;
	/* margin: 16px calc(-1 * var(--page-padding)) ; */
	border-radius: 4px;	
}

@media all and ( min-width: 1700px ) {
	
	:root {
		--panel-width: 360px;
		--line-height: 28px;
		--page-padding: 28px;
	}

	.lexdocs-content {
		width: 100%;
	}
}

/* mobile */

@media all and ( max-width: 640px ) {

	:root {
		--page-padding: 16px;
	}

	.lexdocs-content {
		padding: var(--page-padding);
	}

	.lexdocs-content h1 {
		font-size: 28px;
		line-height: 36px;
		padding-right: 20px;
		margin-top: 0;
	}

	.lexdocs-content h2 {
		font-size: 24px;
		line-height: 32px;
		margin-top: 24px;
	}

	.lexdocs-content h3 {
		font-size: 20px;
		line-height: 28px;
	}

}

pre .str, code .str { color: #c79369; } /* string */
pre .kwd, code .kwd { color: #2194ce; } /* keyword */
pre .com, code .com { color: #999999; } /* comment */
pre .cls, code .cls { color: #4fccbd; } /* class */
pre .stc, code .stc { color: #0b6b60; } /* static member */
pre .stf, code .stf { color: #6d8cf5; } /* static function */
pre .lit, code .lit { color: #ce57b4; } /* literal */

pre .pre, code .pre { color: #8f8c8c; } /* preprocessor */
pre .pln, code .pln { color: #444444; } /* plaintext */
pre .dec, code .dec { color: #a5dba0; } /* decimal */
pre .mtd, code .mtd { color: #e6e2b8; } /* method */
pre .var, code .var { color: #d8d5d5; } /* variable */
pre .enu, code .enu { color: #c0dec2; } /* enum */

pre .tag, code .tag { color: #56d386; } /* HTML tag */
pre .atn, code .atn { color: #81cdf8; } /* HTML attribute name */
pre .com, code .com { color: #4e994d; } /* comment */
pre .pln, code .pln { color: #aaaaaa; } /* plaintext */

.desc {
	color: var(--muted-foreground);
}

a .desc {
	color: var(--color-blue-500);
}

.param {
	color: var(--stylish-color);
}

.prop, .method {
	color: var(--stylish-color);
	font-size: 16px;
}

code:has(.constructor) {
	background: none;
}

.constructor {
	color: var(--stylish-color);
	font-size: 21px;
}

.lexdocs-content span.solid {
	border-radius: 8px;
	padding: 2px;
	padding-inline: 8px;
}

.lexdocs-content span.outline {
	border-radius: 8px;
	padding: 2px;
	padding-inline: 8px;
}

:root[data-mode="light"] .lexdocs-content {
	color: #202124;
}

:root[data-mode="light"] code {
	background-color: #ededed;
}

:root[data-mode="light"] code button {
	color: #434e53;
}

:root[data-mode="light"] code button:hover {
	color: #879094;
}

:root[data-mode="light"] pre .str, :root[data-mode="light"] code .str { color: #188038; }
:root[data-mode="light"] pre .kwd, :root[data-mode="light"] code .kwd { color: #1967d2; }
:root[data-mode="light"] pre .com, :root[data-mode="light"] code .com { color: #b80672; }
:root[data-mode="light"] pre .cls, :root[data-mode="light"] code .cls { color: #0b9484; }
:root[data-mode="light"] pre .dec, :root[data-mode="light"] code .dec { color: #c5221f; }
:root[data-mode="light"] pre .mtd, :root[data-mode="light"] code .mtd { color: #636362; }
:root[data-mode="light"] pre .lit, :root[data-mode="light"] code .lit { color: #1967d2; }
:root[data-mode="light"] pre .var, :root[data-mode="light"] code .var { color: #222222; }
:root[data-mode="light"] pre .enu, :root[data-mode="light"] code .enu { color: #505fe2; }
:root[data-mode="light"] pre .tag, :root[data-mode="light"] code .tag { color: #2183b4; }
:root[data-mode="light"] pre .atn, :root[data-mode="light"] code .atn { color: #a753c0; }

:root[data-mode="light"] .desc {
	color: #70777a;
}

:root[data-mode="light"] .param {
	color: #37474f;
}

:root[data-mode="light"] .prop, :root[data-mode="light"] .method {
	color: #37474f;
}

:root[data-mode="light"] #goUpButton {
	color: #37474f;
}

:root[data-mode="light"] #goUpButton:hover {
	color: #879094;
}

.lextable {
	overflow-x: scroll
}

.lextable table {
	table-layout: auto;
}

.lextable table th {
	white-space: nowrap;
}

/* Hack to shrink Type and Method columns in reference docs */
.lextable:has(input) table tbody tr:last-child td:not(:last-child) {
	width: 1px;
    white-space: nowrap;
}